Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python将数据转置为观察值_Python_Pandas - Fatal编程技术网

Python将数据转置为观察值

Python将数据转置为观察值,python,pandas,Python,Pandas,我有个问题 我的初始df如下所示: Col 1 Col 2 Col 3 laura purchase 1 dress23 laura puchase 2 skirt55 laura purchase 3 shirt47 laura purchase 4 coat45 julia puchase 1 skirt74 julia purchase 2 short74 julia purchase 3 coat14 julia

我有个问题

我的初始df如下所示:

Col 1   Col 2   Col 3

laura   purchase 1  dress23

laura   puchase 2   skirt55

laura   purchase 3  shirt47

laura   purchase 4  coat45

julia   puchase 1   skirt74

julia   purchase 2  short74

julia   purchase 3  coat14

julia   purchase 4  coat15


我想用熊猫图书馆获得它

Col 1   Purchase 1  Purchase 2  Purchase 3  Purchase 4
Laura   dresse23    skirt55     shirt47     coat45
Julia   skirt74    short74      coat14      coast10
拜托,你能帮我吗

那太好了

谢谢,

N

给定数据:

   col 1       col 2    col 3
0  laura  purchase 1  dress23
1  laura  purchase 2  skirt55
2  laura  purchase 3  shirt47
3  laura  purchase 4   coat45
4  julia  purchase 1  skirt74
5  julia  purchase 2  short74
6  julia  purchase 3   coat14
7  julia  purchase 4   coat15
转型:

df = df.pivot(index='col 1', columns='col 2', values='col 3').reset_index()
df = df.rename(columns={'col 1': 'name'})
df.columns.name = 'id'
print(df)
结果是:

id   name purchase 1 purchase 2 purchase 3 purchase 4
0   julia    skirt74    short74     coat14     coat15
1   laura    dress23    skirt55    shirt47     coat45
给定数据:

   col 1       col 2    col 3
0  laura  purchase 1  dress23
1  laura  purchase 2  skirt55
2  laura  purchase 3  shirt47
3  laura  purchase 4   coat45
4  julia  purchase 1  skirt74
5  julia  purchase 2  short74
6  julia  purchase 3   coat14
7  julia  purchase 4   coat15
转型:

df = df.pivot(index='col 1', columns='col 2', values='col 3').reset_index()
df = df.rename(columns={'col 1': 'name'})
df.columns.name = 'id'
print(df)
结果是:

id   name purchase 1 purchase 2 purchase 3 purchase 4
0   julia    skirt74    short74     coat14     coat15
1   laura    dress23    skirt55    shirt47     coat45
1.方法设置索引、堆栈、重置索引 使用
设置索引
取消堆栈
重置索引

df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.pivot(index='Col 1',columns = 'Col 2', values= 'Col 3').reset_index()
输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
首先做一点数据清理,您的结果如下所示。 新输入df

   Col 1       Col 2    Col 3
0  laura  purchase 1  dress23
1  laura  purchase 2  skirt55
2  laura  purchase 3  shirt47
3  laura  purchase 4   coat45
4  julia  purchase 1  skirt74
5  julia  purchase 2  short74
6  julia  purchase 3   coat14
7  julia  purchase 4   coat15
现在,执行熊猫造型:

输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
2.方法透视和重置索引 或者使用
枢轴
重置索引

df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.pivot(index='Col 1',columns = 'Col 2', values= 'Col 3').reset_index()
输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
1.方法设置索引、堆栈、重置索引 使用
设置索引
取消堆栈
重置索引

df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.pivot(index='Col 1',columns = 'Col 2', values= 'Col 3').reset_index()
输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
首先做一点数据清理,您的结果如下所示。 新输入df

   Col 1       Col 2    Col 3
0  laura  purchase 1  dress23
1  laura  purchase 2  skirt55
2  laura  purchase 3  shirt47
3  laura  purchase 4   coat45
4  julia  purchase 1  skirt74
5  julia  purchase 2  short74
6  julia  purchase 3   coat14
7  julia  purchase 4   coat15
现在,执行熊猫造型:

输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
2.方法透视和重置索引 或者使用
枢轴
重置索引

df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.set_index(['Col 1','Col 2'])['Col 3'].unstack().reset_index()
df.pivot(index='Col 1',columns = 'Col 2', values= 'Col 3').reset_index()
输出:

Col 2  Col 1 puchase 1 puchase 2 purchase 1 purchase 2 purchase 3 purchase 4
0      julia   skirt74      None       None    short74     coat14     coat15
1      laura      None   skirt55    dress23       None    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45
Col 2  Col 1 purchase 1 purchase 2 purchase 3 purchase 4
0      julia    skirt74    short74     coat14     coat15
1      laura    dress23    skirt55    shirt47     coat45

到目前为止你试过什么?另外,我看不到您的输出有任何模式以及您希望如何格式化。我想
coast10
应该是
coat15
?到目前为止您尝试了什么?另外,我看不到您的输出有任何模式以及您希望如何格式化。我想
coast10
应该是
coat15
?您不应该复制和粘贴答案。;-)@达里乌斯莫维奇:)你是对的,幸好我没有。不过,我会投票支持你的解决方案!我喜欢。你不应该复制和粘贴答案。;-)@达里乌斯莫维奇:)你是对的,幸好我没有。不过,我会投票支持你的解决方案!我喜欢。