簡體   English   中英

如何按系列划分pandas Dataframe的每一列?

[英]How to divide each column of pandas Dataframe by a Series?

我有一個 Pandas 數據框,我想在其中將每一列除以每一行的相同數據系列值。 每列和數據系列的長度相同。 數據系列只有浮點數,但數據框中的某些單元格具有 NaN。

我嘗試了各種方法,但不知何故我無法解決。

df = df.divide(data_series, axis=1)

有什么建議?

非常感謝!

我找到了解決方案

設置axis = 0 解決了這個問題。

df = df.divide(data_series, axis=0 )

非常感謝

使用 df 列格式化您的Series索引

df.div(pd.Series([100,100,100],index=df.columns))
Out[132]: 
      A     B    id
0  0.01  0.02  0.01
1  0.02  0.03  0.01
2  0.04  0.00  0.03
3  0.05  0.06  0.01
4  0.08  0.09  0.03
5  0.09  0.07  0.03

給定數據幀df和 series s ,您還可以使用numpy

res = pd.DataFrame(df.values / s.values[:, None],
                   index=df.index, columns=df.columns)

暫無
暫無

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

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