【发布时间】:2021-05-21 14:04:57
【问题描述】:
假设我有一个如下所示的简单数据框,我想将 column_4 中的第 i 个元素划分为该特定行的所有其他列(column_4 除外)中的第 i 个元素,然后执行此操作在所有行上。
另一种说法是如何按第 4 列标准化第 1、2、3 列?有没有简单的方法可以做到这一点?
例如
输入
import pandas as pd
df = pd.DataFrame({'column_1':[1,2,3], 'column_2':[4,5,6], 'column_3':[7,8,9], 'column_4':[2,3,4]})
df.head()
期望的输出
df2 = pd.Dataframe({'column_1':[1/2,2/3,3/4], 'column_2':[4/2,5/3,6/4], 'column_3':[7/2,8/3,9/4], 'column_4':[2,3,4]})
df2.head()
注意column_1,column_2,column_3 中的每个元素都已除以column_4 中的等效元素。
注意:在这种情况下,我使用了一个相对较小的 DataFrame,但我也想知道是否有一种方法可以概括具有 1000 行和 100 列的 DataFrame 的结果。
【问题讨论】:
标签: python pandas dataframe normalization