我有这样的Dataframe:
dem = {
'{(dt-au=120000),(dt-au=120100)}': ['Y'],
'{(dt-au=120000),(dt-au=120400)}': ['N'],
'{(dt-au=120600),(dt-bi=130450)}': ['Y']
};
df = pd.DataFrame(dem)
pd.melt(df)
variable value
0 {(dt-au=120000),(dt-au=120100)} Y
1 {(dt-au=120000),(dt-au=120400)} N
2 {(dt-au=120600),(dt-bi=130450)} Y
我想生成另一个Dataframe,它的工作方式与pig的flatten bag函数相同。此数据框看起来像:
variable value
0 dt-au=120000 Y
1 dt-au=120100 Y
2 dt-au=120400 N
3 dt-au=120000 N
4 dt-au=120600 Y
5 dt-bi=130450 Y
注: dt-au=120000
以不同的值显示两次( Y
以及 N
).
我想知道Pandas是怎么做到的。
2条答案
按热度按时间ubby3x7f1#
不确定是否有方法,因为您需要将密钥字符串拆分为
dem
所以,假设没有办法用Pandas来做这件事,这里有一个前Pandas暴力的方法。输出(转置)
s5a0g9ez2#
您可以使用Pandas的字符串函数: