基于每列的值索引行值

Indexing Row Values Based on Value of Each Column

我有一个 8r x 10c 数据框,我想通过将每行中的值除以其列中的第一个值来复制数据框(即 'indexing' 每列,第一个值 = 100 ).

所以如果我开始...

ColA ColB ColC
1000 2000 3000
2000 3000 9000

会return...

ColA ColB ColC
 100  100  100
 200  150  300

是否有一个简单的命令来执行此操作,或者它是某种循环?

您可以执行以下操作:

>>> df / (df.iloc[0] / 100)
   ColA ColB ColC
0   100  100  100
1   200  150  300

df.iloc[0] 选择第一行。将它除以 100 得到一行值来调整每列。最后,我们将整个 DataFrame 除以这一新行的值。默认情况下沿轴 0 发生除法(即沿每一列向下)。

等效的操作是 df / df.iloc[0] * 100