Other data edit

其他的資料內容異動相關方法

資料去重複

# data去除「data中重複的資料」
data = data[~data.duplicated()]
# data重新指向(=) data中取出([])「data重複值」之外的值

data = data.drop_duplicates() #data去除重複資料
data.drop_duplicates(inplace=True) #data去除重複資料(直接修改data本人)

上三行執行結果data是完全一樣的!

取代

轉換其中所有None值

df = df.fillna('')  # 將None值替換為空字串

指定列進行None轉換

參數可以傳入dist選定某欄進行。

df = df.fillna({'your_column': ''})  # 僅對「your_column」這一欄中的None進行轉換

replace

可以用replace取代所有欄位中指定值成目標。

df = df.replace('a', 'A')

# 如果想取代成None,需要用dict{}模式參數,不然會無效果!
df = df.replace({'x', None})

# 取代掉X欄中所有「\n」
df['X'] = df['X'].apply(lambda x: x.replace('\n', ''))

合併

append

#new一個空的DataFrame
result = pd.DataFrame()

#do something取得的DataFrame
temp = getData()

#串接放入(ignore_index=True 會捨棄原本DataFrame的index為其分配新索引。)
result = result.append(temp, ignore_index=True)

concat

有類似DB.table的join功能

參考:http://violin-tao.blogspot.com/2017/06/pandas-2-concat-merge.html

Last updated