我碰巧有以下数据帧:
import pandas as pd
import numpy as np
df = pd.DataFrame({ 'Prod1': ['10','','10','','',''],
'Prod2': ['','5','5','','','5'],
'Prod3': ['','','','8','8','8'],
'String1': ['','','','','',''],
'String2': ['','','','','',''],
'String3': ['','','','','',''],
'X1': ['x1','x2','x3','x4','x5','x6'],
'X2': ['','','y1','','','y2']
})
print(df)
Prod1 Prod2 Prod3 String1 String2 String3 X1 X2
0 10 x1
1 5 x2
2 10 5 x3 y1
3 8 x4
4 8 x5
5 5 8 x6 y2
这是一个带有相关字符串的产品的示意表;实际的字符串在列(X1
,X2
),但它们最终应该移动到(String1
,String2
,String3
),这取决于对应的产品是否有值。在
例如:
行0
在Prod1
上有一个值,因此x1
应该移动到String1
。
行1
在Prod2
上有一个值,因此x2
应该移动到String2
。在
{Prods}通常是多个{Prods},其中的cd15>中应该有多个值。最终结果如下:
^{pr2}$我在考虑嵌套的列/行循环,但我对pandas还不够熟悉,无法找到解决方案。 非常感谢您的任何建议!在
我将步骤分解:
相关问题 更多 >
编程相关推荐