Python pandas dataframe:如何添加数字数据的后续行
我有一个只包含数字的数据框,我想添加后续行。因此,从这样的数据帧:Python pandas dataframe:如何添加数字数据的后续行,python,pandas,Python,Pandas,我有一个只包含数字的数据框,我想添加后续行。因此,从这样的数据帧: A B 0 1 2 1 3 3 2 5 4 3 9 7 A B 0 4 5 1 8 7 2 14 11 我想得到一个新的数据帧,如下所示: A B 0 1 2 1 3 3 2 5 4 3 9 7 A B 0 4 5 1 8 7 2 14 11 (新数据帧的第一行包含原始数据帧的前两行的条目,相加,等等) 我找到
A B
0 1 2
1 3 3
2 5 4
3 9 7
A B
0 4 5
1 8 7
2 14 11
我想得到一个新的数据帧,如下所示:
A B
0 1 2
1 3 3
2 5 4
3 9 7
A B
0 4 5
1 8 7
2 14 11
(新数据帧的第一行包含原始数据帧的前两行的条目,相加,等等)
我找到了以下方法:
df = pandas.DataFrame({'A': [1,3,5,9], 'B': [2,3,4,7]})
new_rows = {}
for i in range(df.shape[0] - 1):
new_rows[i] = df.irow(i)+df.irow(i+1)
new_df = pandas.DataFrame(new_rows).transpose()
但它既不快也不漂亮。关于如何优化速度和python zen ness的任何建议?自行调用,然后需要调用:
自行调用,然后需要调用:
自行调用,然后需要调用:
自行调用,然后需要调用:
这将起作用,并为您提供与示例中相同的索引
(df+df.shift(-1))[:-1]
Out[146]:
A B
0 4 5
1 8 7
2 14 11
这将起作用,并为您提供与示例中相同的索引
(df+df.shift(-1))[:-1]
Out[146]:
A B
0 4 5
1 8 7
2 14 11
这将起作用,并为您提供与示例中相同的索引
(df+df.shift(-1))[:-1]
Out[146]:
A B
0 4 5
1 8 7
2 14 11
这将起作用,并为您提供与示例中相同的索引
(df+df.shift(-1))[:-1]
Out[146]:
A B
0 4 5
1 8 7
2 14 11
带有
头部
和尾部
的替代方法:
df.tail(-1).reset_index(drop=True) + df.head(-1).reset_index(drop=True)
Out[41]:
A B
0 4 5
1 8 7
2 14 11
带有
头部
和尾部
的替代方法:
df.tail(-1).reset_index(drop=True) + df.head(-1).reset_index(drop=True)
Out[41]:
A B
0 4 5
1 8 7
2 14 11
带有
头部
和尾部
的替代方法:
df.tail(-1).reset_index(drop=True) + df.head(-1).reset_index(drop=True)
Out[41]:
A B
0 4 5
1 8 7
2 14 11
带有
头部
和尾部
的替代方法:
df.tail(-1).reset_index(drop=True) + df.head(-1).reset_index(drop=True)
Out[41]:
A B
0 4 5
1 8 7
2 14 11
谢谢如果您感兴趣,请提供一些计时结果:我的版本为1.39秒,您的版本为2.19秒。谢谢!如果您感兴趣,请提供一些计时结果:我的版本为1.39秒,您的版本为2.19秒。谢谢!如果您感兴趣,请提供一些计时结果:我的版本为1.39秒,您的版本为2.19秒。谢谢!如果您感兴趣,请提供一些计时结果:我的版本为1.39秒,您的版本为2.19毫秒。