2024-05-23 19:32:55 发布
网友
考虑这样定义的数据帧:
import Pandas as pd test = pd.DataFrame({ 'id' : ['a', 'b', 'c', 'd'], 'times' : [2, 3, 1, 5] })
是否可以由此创建一个新的数据帧,其中每一行重复times次,结果如下所示:
times
>>> result id times 0 a 2 1 a 2 2 b 3 3 b 3 4 b 3 5 c 1 6 d 5 7 d 5 8 d 5 9 d 5 10 d 5
使用^{}和^{}的组合
test.loc[test.index.repeat(test.times)] id times 0 a 2 0 a 2 1 b 3 1 b 3 1 b 3 2 c 1 3 d 5 3 d 5 3 d 5 3 d 5 3 d 5
要模拟精确的输出,请使用reset_index
reset_index
test.loc[test.index.repeat(test.times)].reset_index(drop=True) id times 0 a 2 1 a 2 2 b 3 3 b 3 4 b 3 5 c 1 6 d 5 7 d 5 8 d 5 9 d 5 10 d 5
使用^{} 和^{} 的组合
要模拟精确的输出,请使用
reset_index
相关问题 更多 >
编程相关推荐