在python中将列表列表转换为数据帧

在python中将列表列表转换为数据帧,python,Python,我有以下清单: sample location date spiceis sp.ab 1 001 9/10/2017 sp1 2 1 001 9/10/2017 sp2 5 1 001 9/10/2017 sp3 10 1 001 9/10/2017 sp4 2 2 002 9/11/2017 sp1 0 2 002 9/11/2017 sp2 2 2 002 9/11/2017 sp3 5 2 002 9/11/2017

我有以下清单:

sample  location    date    spiceis sp.ab
1   001 9/10/2017   sp1 2
1   001 9/10/2017   sp2 5
1   001 9/10/2017   sp3 10
1   001 9/10/2017   sp4 2
2   002 9/11/2017   sp1 0
2   002 9/11/2017   sp2 2
2   002 9/11/2017   sp3 5
2   002 9/11/2017   sp4 5
3   003 9/12/2017   sp1 2
3   003 9/12/2017   sp2 1
3   003 9/12/2017   sp3 1
3   003 9/12/2017   sp4 0
4   004 9/13/2017   sp1 7
4   004 9/13/2017   sp2 4
4   004 9/13/2017   sp3 2
4   004 9/13/2017   sp4 9
我想返回一个如下所示的数据帧。有人能帮我吗

sample  location    date    sp1 sp2 sp3 sp4
1   001 9/10/2017   2   5   10  2
2   002 9/11/2017   0   2   5   5
3   003 9/12/2017   2   1   1   0
4   004 9/13/2017   7   4   2   9

假设每一行都是一个列表,您所说的数据帧是指数据帧,那么您可以使用列表理解将列表列表转换为元组列表:

listoftuples = [tuple(l) for l in listoflists]
然后使用from_records功能:

import pandas as pd
df = pd.DataFrame.from_records(listoftuples,columns=['sample','location','date','spiceis','sp.ab'])

我现在发现我的数据不是一个列表;这是一个数据帧。当我应用代码时,出现了一个错误:AssertionError:传递了5列,传递的数据有8列您有修改过的代码吗?非常感谢。啊,我想我误解了你的问题。看起来你应该使用pivot_表,这是我现在的链接工作。多谢各位。