pandas資料清洗

2022-03-18 20:47:39 字數 2666 閱讀 4653

df.query():查詢符合某個條件語句的 and  or  ==  !=   <=    >=

###新增一列的值等於df其中兩列的加和

###分組求和

df.groupby():可以指定某列進行求和df.groupby("姓名")

df插入一列在指定索引:

方法一:df.insert(0,colname,value)

# insert one col at first

df.insert(0,"id",value=[1,3,5,7])

方法二:

直接重排序列表,不推薦

列轉索引:

索引轉列:

讀取excel or csv,並指定索引:index_col=0

日期列轉換:

## 日期轉換

df["日期"]=df.astype(np.datetime64)

####設定某列資料型別

判斷某幾列是否存在符合條件的值:

df.姓名.isin([0, "0.0", "0", "", np.nan, " "])

或判斷

name_checker =df[

(df.姓名.isin([0, "0.0", "0", "", np.nan, " "])) | (df.工作性質.isin([0, "0.0", "0", "", np.nan, " "])) | (

df.專案組.isin([0, "0.0", "0", "", np.nan, " "])) | (df.工作內容.isin([0, "0.0", "0", "", np.nan, " "]))]

if not name_checker.empty:

logger.error(f"error description:\t\n,\n 捕獲缺失格式錯誤,")

dropna()剔除缺失行row:

###至少不為nan的閾值為5,否者直接剔除此行axis=1代表列

dropna(axis=0,thresh=5)

剔除指定列含有缺失的行:

import pandas as pd

import numpy as np

df = pd.dataframe()

print(df)

## 指定那幾列具有缺失的才剔除

pandas資料清洗

1 檢視重複的行 df.duplicated 2 檢視某列重複的行df.duplicated 列標籤 3 刪除重複的行df.drop duplicates 4 刪除某一列重複的行df.drop duplicates 列標籤 1 判斷資料缺失df.isnull 2 資料未缺失df.notnull 3 ...

Pandas的資料清洗

如果一列中含有多個型別,則該列的型別會是object,同樣字串型別的列也會被當成object型別.提取需要的2列資料 data statistic key data statistic time key 刪除空資料的行 data statistic key data statistic key.dr...

(pandas)評論資料清洗

df df.dropna subset comment 根據使用者id與comment兩列作為參照,如存在使用者id與comment同時相同,那麼只保留最開始出現的。df.drop duplicates subset user id comment keep first inplace true 重...