簡體   English   中英

將列中的值除以列名的值

[英]Divide values in a column by the value of the column name

因此,假設您有一個 DataFrame,它具有列名/值 [1,2,3,4]。 現在我想將 dataframe 中的每個值除以列的值(列表示數值)。 我可以用 for 循環來做,但我寧願用 lambda function 來做,但我找不到如何用 Z945F3FC449518A73B9F5F146 函數的標准解釋來解決它。 帶有 for 循環的版本可以工作,但是當 dataframe 變大時,恐怕它不會很好地擴展。 這是我已經擁有的:

values = df.columns #or predefined array, does not really matter in this case
for i in range(len(values)):
    df[values[i]] = df[values[i]] / values[i]
print(df.head())

假設你有這個 dataframe:

   10  20  30
0   1   1   1
1   2   2   2
2   3   3   3

然后可以用.divide來划分dataframe:

print(df.divide(df.columns.astype(float)))

印刷:

    10    20        30
0  0.1  0.05  0.033333
1  0.2  0.10  0.066667
2  0.3  0.15  0.100000

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM