我有一个像这样几列的熊猫
username A time place
AAA B 1 YYY
AAA C 2 YYY
AAA D 1 YYY
AAA B 3 ZZZ
AAA C 4 ZZZ
AAA B 3 ZZZ
BBB B 1 YYY
BBB C 2 YYY
BBB D 1 YYY
BBB B 7 ZZZ
BBB C 8 ZZZ
BBB B 9 ZZZ
CCC B 6 YYY
CCC C 5 YYY
CCC D 8 YYY
CCC B 7 ZZZ
CCC C 8 ZZZ
CCC B 9 ZZZ
在上面的panda中,除了time之外的所有列都是字符串。时间是一个浮动列。
我正在尝试创建一个序列,以便对于每个用户名,我希望将用户名的所有行整理为一行。输出数据框希望看起来像这样。
username A time place
AAA B+C+D+B+C+B 1+2+1+3+4+3 YYY+YYY+YYY+ZZZ+ZZZ+ZZZ
BBB B+C+D+B+C+B 1+2+1+7+8+9 YYY+YYY+YYY+ZZZ+ZZZ+ZZZ
CCC B+C+D+B+C+B 6+5+8+7+8+9 YYY+YYY+YYY+ZZZ+ZZZ+ZZZ
我使用“+”作为分隔符,但它可以是通常用于分隔符的任何字符(如 ,/ \ ..etc)
我已经能够使用
df.groupby('username')['A].apply('+',join).reset_index()
所有列都相同。我终于合并了所有单独的 df 以获得我想要的表格。
对于我能够做的时间列,但我希望得到一个浮动类型的列。我很难做到这一点。希望有更多知识的人可以在这里指导我。
我什至尝试在事后使用 df['time'].astype(float) 更改输出列
但是我得到了所有的 NaN。
相关分类