繁体   English   中英

Python,获取多个列表并放入 pd.Dataframe

[英]Python, Take Multiple Lists and Putting into pd.Dataframe

我已经看到了这个问题的各种答案(比如这个) ,并且没有成功地将我的列表放入 dataframe 中。 我有一个 header 列表(表示列标题),然后是一个包含多条记录的变量:

list1 = ['Rank', 'Athlete', 'Distance', 'Runs', 'Longest', 'Avg. Pace', 'Elev. Gain']

list2 = (['1', 'Jack', '57.4 km', '4', '21.7 km', '5:57 /km', '994 m']
['2', 'Jill', '34.0 km', '2', '17.9 km', '5:27 /km', '152 m']
['3', 'Kelsey', '32.6 km', '2', '21.3 km', '5:46 /km', '141 m'])

当我尝试类似的事情时:

df = pd.DataFrame(list(zip(['1', 'Jack, '57.4 km', '4', '21.7 km', '5:57 /km', '994 m'],
#                                      ['2', 'Jill', '34.0 km', '2', '17.9 km', '5:27 /km', '152 m'])))

它将所有属性列为自己的行,如下所示:

    0   1
0   1   2
1   Jack    Jill
2   57.4 km 34.0 km
3   4   2
4   21.7 km 17.9 km
5   5:57 /km    5:27 /km
6   994 m   152 m

如何将它放入以list1作为标题的框架中,并且数据的 rest 整齐地排列在一起?

给定

list1 = ['Rank', 'Athlete', 'Distance', 'Runs', 'Longest', 'Avg. Pace', 'Elev. Gain']
list2 = (['1', 'Jack', '57.4 km', '4', '21.7 km', '5:57 /km', '994 m'],
    ['2', 'Jill', '34.0 km', '2', '17.9 km', '5:27 /km', '152 m'],
    ['3', 'Kelsey', '32.6 km', '2', '21.3 km', '5:46 /km', '141 m'])

pd.DataFrame(list2, columns=list1)

返回

  Rank Athlete Distance Runs  Longest Avg. Pace Elev. Gain
0    1    Jack  57.4 km    4  21.7 km  5:57 /km      994 m
1    2    Jill  34.0 km    2  17.9 km  5:27 /km      152 m
2    3  Kelsey  32.6 km    2  21.3 km  5:46 /km      141 m

将您的第二个列表更改为列表列表,然后df = pd.DataFrame(columns = list1, data = list2)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM