最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Pandas處理DataFrame稀疏數(shù)據(jù)及維度不匹配數(shù)據(jù)分析詳解

 更新時間:2023年02月16日 14:13:42   作者:fanstuck  
這篇文章主要為大家介紹了Pandas處理DataFrame稀疏數(shù)據(jù)及維度不匹配數(shù)據(jù)分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

前言

眾所周知我們獲取的第一手數(shù)據(jù)往往都是比較雜亂無章的,這些文件保存一般都是csv文件或者是excel文件,讀取轉(zhuǎn)換成DataFrame還有可能因為缺少列索引或者是各類數(shù)據(jù)維度不相等而報錯。讀取成功為DataFrame仍然有很多問題存在,比如列索引缺失,眾多NaN數(shù)據(jù)以及合并計算問題等,這篇文章將具體解決此場景下的內(nèi)容。

一、索引缺失

讀取缺失量較大的數(shù)據(jù)時,索引并不是能完全覆蓋到的。存在著列索引缺失的問題,這是一個比較頭疼的問題,使得我們后面的數(shù)據(jù)特征無法使用:

這是針對機器學習的數(shù)據(jù)集特征,面對這種情況我們可以通過重新設置索引的方式,倘若特征之間是有規(guī)律的話,例如上表5列以后的數(shù)據(jù)每列的列索引都是features的話那么我們可以通過reindex的方法給它補全索引:

def deal_defect(df,n):
    df_defect=df.iloc[:,n:]
    m=4
    list_columns=[]
    for i in range(df_defect.shape[1]):
        list_columns.append('features%d'%m)
        m=m+1
    df_defect.columns=list_columns
    df_all=pd.concat([df.iloc[:,:n],df_defect],axis=1)
    return df_all
deal_defect(df,5)

二、負值取正

若是要對整個DataFrame的值都取負數(shù),并不需要挨個列都轉(zhuǎn)再使用abs函數(shù),讀取的DataFrame一般都是object類型不能直接使用abs,需要使用astype將dataframe類型轉(zhuǎn)換:

當數(shù)據(jù)中帶有NaN時是不能直接轉(zhuǎn)int的:

df_fill=df.astype('int')
IntCastingNaNError: Cannot convert non-finite values (NA or inf) to integer

但是我們轉(zhuǎn)換為float的時候原始數(shù)據(jù)集又出現(xiàn)了后面帶.0的情況:

這里我們要使用到fillna函數(shù),先轉(zhuǎn)為float取絕對值之后再填充為空值之后替換為-1,這樣一來-1的位置就是缺失值的位置,以便于我們識別:

def fill_conver(df):
    df_fill=df.astype('float')
    df_fill=abs(df_fill)
    df_fill=df_fill.fillna('')
    df_fill=df_fill.replace('',-1)
    df_fill=df_fill.astype(int)
    return df_fill
fill_conver(df)

三、提取數(shù)值

既然有很多空值我們可以采取側(cè)缺將低于一定比例的數(shù)據(jù)去除,這部分在上篇缺失值處理文章已經(jīng)談到這里不再說明。我們最常遇到的情況就是需要處理空值只提去出相應標簽下的數(shù)值,這里涉及到列索引的選擇和合并操作。例如我們只需要特征列偶數(shù)列的數(shù)值:

def get_features(df):
    list_all_link=[]
    df=df.iloc[:,2:]
    for i in range(df.shape[0]):
        #flag為控制外層循環(huán)開關
        flag=1
        for j in range(df.shape[1]):
            if(flag==0):
                break
            if(j%2==0):
                if(df.iloc[i:i+1,j].item()==-1):
                    flag=0
                else:
                    list_all_link.append(list(df.iloc[i:i+1,j]))
    return list_all_link
get_features(df)

四、提取唯一值

如果我們需要只需要取到的數(shù)列中的唯一值,需要對數(shù)據(jù)集進行處理,可以使用ravel()和unique()函數(shù)。此時我們還需要注意刪掉-1:

def unique_df(df):
    df_features=df.iloc[:,2:]
    unique_series=pd.Series(pd.Series(df_features.iloc[:,[i%2==0 for i in range(len(df_features.columns))]].values.ravel()).unique())
    list_series=list(unique_series.values)
    return list_series
unique_list=unique_df(df)
unique_list.remove(-1)
unique_list

以上就是Pandas處理DataFrame稀疏數(shù)據(jù)及維度不匹配數(shù)據(jù)分析詳解的詳細內(nèi)容,更多關于Pandas DataFrame數(shù)據(jù)分析的資料請關注腳本之家其它相關文章!

相關文章

  • Python實現(xiàn)將MongoDB中的數(shù)據(jù)導入到MySQL

    Python實現(xiàn)將MongoDB中的數(shù)據(jù)導入到MySQL

    這篇文章主要為大家詳細介紹了如何通過Python封裝一個將?MongoDB?中的數(shù)據(jù)導入到?MySQL?中的?Python?工具類?MongoToMysql,感興趣的可以了解一下
    2023-05-05
  • 深入探究python中Pandas庫處理缺失數(shù)據(jù)和數(shù)據(jù)聚合

    深入探究python中Pandas庫處理缺失數(shù)據(jù)和數(shù)據(jù)聚合

    在本篇文章中,我們將深入探討Pandas庫中兩個重要的數(shù)據(jù)處理功能:處理缺失數(shù)據(jù)和數(shù)據(jù)聚合,文中有詳細的代碼示例,對我們的學習或工作有一定的幫助,需要的朋友可以參考下
    2023-07-07
  • python基礎之引用和匿名函數(shù)

    python基礎之引用和匿名函數(shù)

    這篇文章主要介紹了python引用和匿名函數(shù),實例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下
    2021-10-10
  • 使用Python讀取和寫入JSON文件的代碼示例

    使用Python讀取和寫入JSON文件的代碼示例

    在Python開發(fā)中,處理JSON數(shù)據(jù)是非常常見的任務,JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,易于人閱讀和編寫,同時也易于機器解析和生成,本文給大家介紹了如何使用 Python 讀取和寫入 JSON 文件,需要的朋友可以參考下
    2024-12-12
  • python用Tkinter做自己的中文代碼編輯器

    python用Tkinter做自己的中文代碼編輯器

    這篇文章主要介紹了python用Tkinter做自己的中文代碼編輯器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 一文教你解決所有Python中文亂碼問題

    一文教你解決所有Python中文亂碼問題

    我們在編寫代碼時總是遇到各種中文亂碼的問題,所以本文就來為大家總結一下遇到的中文亂碼問題和對應的解決方案,以及為什么會出現(xiàn)中文亂碼的問題,希望對大家有所幫助
    2023-12-12
  • 在tensorflow中設置使用某一塊GPU、多GPU、CPU的操作

    在tensorflow中設置使用某一塊GPU、多GPU、CPU的操作

    今天小編就為大家分享一篇在tensorflow中設置使用某一塊GPU、多GPU、CPU的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python利用fitz庫提取pdf中的圖片

    Python利用fitz庫提取pdf中的圖片

    Fitz庫是一個Python圖像處理庫,主要用于打開、編輯和保存PDF、TIFF和JPEG格式的圖像,它可以幫助用戶讀取和寫入PDF文件,提取PDF頁面以及在頁面上進行標記和注釋,本文主要介紹了如何通過Python的fitz庫提取pdf中的圖片,需要的朋友可以參考下
    2023-05-05
  • python 使用裝飾器并記錄log的示例代碼

    python 使用裝飾器并記錄log的示例代碼

    今天小編就為大家分享一篇python 使用裝飾器并記錄log的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 用Python中的字典來處理索引統(tǒng)計的方法

    用Python中的字典來處理索引統(tǒng)計的方法

    這篇文章主要介紹了用Python中的字典來處理索引統(tǒng)計的方法,字典的使用是Python學習當中的基礎知識,本文則是相關的一個小實踐,需要的朋友可以參考下
    2015-05-05

最新評論

临泉县| 蛟河市| 孝昌县| 青海省| 定远县| 鄂伦春自治旗| 民和| 淮北市| 育儿| 濮阳县| 乌拉特后旗| 兖州市| 翼城县| 黔西县| 沙河市| 上林县| 内丘县| 文水县| 延长县| 临汾市| 盐池县| 海淀区| 宝丰县| 广河县| 昭通市| 伊宁县| 新宁县| 景德镇市| 黄石市| 和平县| 华容县| 碌曲县| 木兰县| 辽宁省| 射洪县| 平原县| 宽甸| 陇南市| 崇阳县| 察隅县| 福鼎市|