[英]Python - Apply rsplit in DataFrame column using lambda
[英]python dataframe: return column name in apply lambda
我想使用apply(applymap) 和 lambda函數來獲取dfx (數據框)中每個元素的列名。 lambda函數用於將另一個數據幀映射到dfx 中,之后將對其進行重寫。
文件
A B C
2011-01-10 123 12 123
2011-01-10 12 32 312
2011-01-11 44 1 30.99
偽代碼
output = dfx.apply(lambda r:r.column)
我不知道如何寫這部分“r:r.column”
預期輸出
A B C
2011-01-10 A B C
2011-01-10 A B C
2011-01-11 A B C
任何幫助都非常受歡迎! 非常感謝!!
您可以通過pd.DataFrame.iloc
進行分配:
df.iloc[:] = df.columns
print(df)
A B C
2011-01-10 A B C
2011-01-10 A B C
2011-01-11 A B C
當您apply
一個函數時,該函數將一個對應於一行的Series
作為參數。 你可以通過傳遞kwarg更改為一列axis=1
至apply
。 Series
沒有列(軸 1) - 只有索引(軸 0)。 相反,您可以使用原始 DataFrame:
dfx.apply(lambda s: dfx.columns, axis=1)
返回
A B C
2011-01-10 A B C
2011-01-10 A B C
2011-01-11 A B C
注意:當然有更好的方法可以不按需要“使用 apply 和 lambda 函數”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.