对于数据框,例如:
dt
COL000 COL001
STK_ID
Rowname1 2 2
Rowname2 1 4
Rowname3 1 1
将Row1除以Row2的结果附加到同一数据帧的最简单方法是什么?即期望的结果是:
COL000 COL001
STK_ID
Rowname1 2 2
Rowname2 1 4
Rowname3 1 1
Newrow 2 0.5
很抱歉,如果这是一个简单的问题,我会慢慢地从R背景中掌握大熊猫。
提前致谢!!!
答案 0 :(得分:3)
以下代码create a new row的索引d
由行a
和b
分隔而成。
import pandas as pd
df = pd.DataFrame(data={'x':[1,2,3], 'x':[4,5,6]}, index=['a', 'b', 'c'])
df.loc['d'] = df.loc['a'] / df.loc['b']
print(df)
# x y
# a 1.0 4.0
# b 2.0 5.0
# c 3.0 6.0
# d 0.5 0.8
答案 1 :(得分:2)
为了访问前两行而不关心索引,可以使用:
df.loc['newrow'] = df.iloc[0] / df.iloc[1]
然后关注@ Ffisegydd的解决方案......
此外,如果要追加多行,请使用pd.DataFrame.append
函数。
答案 2 :(得分:0)
pandas逐行完成所有工作。通过包含其他元素,它还可以解释您是否需要新列:
data['new_row_with_division'] = data['row_name1_values'] / data['row_name2_values']