處理丟失資料nan主要有三種方法:pd.dropna,pd.fillna,pd.isnull
建立乙個包含nan(not a number)的資料。
import pandas as pd
import numpy as np
dates = pd.date_range('20130101', periods=6)
df = pd.dataframe(np.arange(24).reshape((6, 4)), index=dates, columns=['a', 'b', 'c', 'd'])
df.iloc[0, 1] = np.nan
df.iloc[1, 2] = np.nan
print(df)
""" a b c d
2013-01-01 0 nan 2.0 3
2013-01-02 4 5.0 nan 7
2013-01-03 8 9.0 10.0 11
2013-01-04 12 13.0 14.0 15
2013-01-05 16 17.0 18.0 19
2013-01-06 20 21.0 22.0 23
"""
如果直接想去掉全是nan的行或者列,使用dropna
df.dropna(
axis=0, # 0: 對行進行操作; 1: 對列進行操作
how='any' # 'any': 只要存在 nan 就 drop 掉; 'all': 必須全部是 nan 才 drop
) """ a b c d
2013-01-03 8 9.0 10.0 11
2013-01-04 12 13.0 14.0 15
2013-01-05 16 17.0 18.0 19
2013-01-06 20 21.0 22.0 23
"""
如果是將nan
的值用其他值代替, 比如代替成0
:
df.fillna(value=0)
""" a b c d
2013-01-01 0 0.0 2.0 3
2013-01-02 4 5.0 0.0 7
2013-01-03 8 9.0 10.0 11
2013-01-04 12 13.0 14.0 15
2013-01-05 16 17.0 18.0 19
2013-01-06 20 21.0 22.0 23
"""
判斷是否有缺失資料nan
, 為true
表示缺失資料:
df.isnull()
""" a b c d
2013-01-01 false true false false
2013-01-02 false false true false
2013-01-03 false false false false
2013-01-04 false false false false
2013-01-05 false false false false
2013-01-06 false false false false
"""
檢測在資料中是否存在nan
, 如果存在就返回true
:
np.any(df.isnull()) == true
# true
python處理資料,pandas 處理txt檔案
以wordsim240為例 目前大多數的資料集以txt檔案居多,但是我們在資料處理中,可能最終會在excel上進行一些分析 製圖,當然也可以使用python製圖包,也可以做出很精美的結果圖。此篇只是簡單的讀取,檔案,儲存到excel中,可以做一些回歸分析 相關係數等 txt中的原始資料 sep t ...
python使用pandas處理excel資料
使用python pandas庫讀取excel檔案 xlsx,xls 使用pandas的 read excel 方法來讀取excel資料,可以讀取第乙個sheet,指定的sheet,多個sheet或所有的sheet。pandas會將這些資料轉化成乙個 dataframe結構,它是乙個扁平的結構來的。...
(3)pandas 缺失資料處理
右擊桌面上選擇 open in terminal 開啟終端。在彈出的終端中輸入 ipython 進入python的直譯器中,如圖1所示。圖1 ipython直譯器匯入實驗常用的python包。如圖2所示。import pandas as pd pandas用來做資料處理。import numpy a...