0
所以我在玩drop_duplicates()
。假設我有一個有重複列的數據幀:刪除熊貓數據框中的重複列:轉置行爲+ drop_duplicates
In [9]:
df1 = pd.DataFrame(data=nr.random((3,2)))
df1
Out[9]:
0 1
0 0.441663 0.396479
1 0.079502 0.715348
2 0.692295 0.069418
3 rows × 2 columns
In [10]:
df2 = pd.concat((df1, df1), axis=1)
df2
Out[10]:
0 1 0 1
0 0.441663 0.396479 0.441663 0.396479
1 0.079502 0.715348 0.079502 0.715348
2 0.692295 0.069418 0.692295 0.069418
3 rows × 4 columns
In [11]:
我想刪除重複的列。以下作品:
df2.T.drop_duplicates().T
Out[12]:
0 1
0 0.441663 0.396479
1 0.079502 0.715348
2 0.692295 0.069418
3 rows × 2 columns
然而,這不起作用:
df2.T.drop_duplicates(inplace=True)
df2
Out[11]:
0 1 0 1
0 0.441663 0.396479 0.441663 0.396479
1 0.079502 0.715348 0.079502 0.715348
2 0.692295 0.069418 0.692295 0.069418
3 rows × 4 columns
In [12]:
爲什麼它不工作?
現在我很困惑。是不是'inplace'用來明確避免拷貝? –
只有一小部分操作實際上可以在沒有使用副本的情況下完成。現場背後的大多數就地行動實際上是複製。這就是爲什麼恕我直言''inplace''操作合成負擔沉重,而且大多是無用的。 – Jeff