Python 将熊猫中的两行合并为一行
我有一个这样的数据框Python 将熊猫中的两行合并为一行,python,pandas,Python,Pandas,我有一个这样的数据框 no, frc, val 1121,1,"John" 1121,0,236 3612,1,"Mary" 3612,0,545 "John",236 "Mary",545 我想这样组合数据 no, frc, val 1121,1,"John" 1121,0,236 3612,1,"Mary" 3612,0,545 "John",236 "Mary",545 您可以使用merge()方法将此DF的两个子集进行自联接: In [21]: (df[df['frc']==
no, frc, val
1121,1,"John"
1121,0,236
3612,1,"Mary"
3612,0,545
"John",236
"Mary",545
我想这样组合数据
no, frc, val
1121,1,"John"
1121,0,236
3612,1,"Mary"
3612,0,545
"John",236
"Mary",545
您可以使用
merge()
方法将此DF的两个子集进行自联接:
In [21]: (df[df['frc']==1]
.drop('frc',1)
.rename(columns={'val':'name'})
.merge(df[df['frc']==0].drop('frc',1)))
Out[21]:
no name val
0 1121 John 236
1 3612 Mary 545
您可以使用
merge()
方法将此DF的两个子集进行自联接:
In [21]: (df[df['frc']==1]
.drop('frc',1)
.rename(columns={'val':'name'})
.merge(df[df['frc']==0].drop('frc',1)))
Out[21]:
no name val
0 1121 John 236
1 3612 Mary 545
或产生OP输出
print(
df.set_index(['no', 'frc']).val
.unstack()[[1, 0]]
.to_csv(index=False, header=False)
)
John,236
Mary,545
或产生OP输出
print(
df.set_index(['no', 'frc']).val
.unstack()[[1, 0]]
.to_csv(index=False, header=False)
)
John,236
Mary,545
如果这只是一个问题,请避免添加与您的问题无关的标签。例如,我不需要了解神经网络来解决您的问题,因此不需要将其标记为机器学习。如果这只是一个问题,请避免添加与您的问题无关的标记。例如,我不需要知道神经网络来解决你的问题,所以没有必要把它称为机器学习。是的,这个解决方案更加有意识!是的,这个解决方案更加有意识!