这是我所拥有的:data = np.array([np.arange(1000)]*2).Tdf = pd.DataFrame(data,columns=['a','b']) a b0 0 01 1 12 2 23 3 34 4 4... ... ...995 995 995996 996 996997 997 997998 998 998999 999 999这是我想要做的:对于 column a,取前 100 行,在每一行后添加一个逗号,将它们添加为自己的一行。取接下来的 100 行。继续直到你用尽列中的点。对列重复b覆盖现有列或创建新列都没有关系。这是我试图让它看起来像的: c d0,1,2,3,4,5...99 0,1,2,3,4,5...99101, 102, 103,... 101, 102, 103,...
1 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
你可以这样做:
df = df.assign(cut=pd.cut(x=df.a, bins = np.arange(0, len(data)+2, 100)))
而a你可以这样做:
df['c'] = df.groupby('cut')['a'].transform(lambda x: ','.join(map(str, x.values.tolist())))
df.drop('cut', axis = 1)
a b c
0 1 1 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1...
1 2 2 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1...
2 3 3 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1...
3 4 4 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1...
4 5 5 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,1...
添加回答
举报
0/150
提交
取消