python - 如何在 python 中将两个列表转换为没有 ['xxx' ] 标签的数据框?

标签 python pandas dataframe

我在 Python 中创建了以下两个列表,并希望将它们转换为数据框。

当我运行以下代码时:

print(scores)
print('-'*100)
print(player)
print('-'*100)

dataframe = {'Score': scores, 'Player': player}
df = pd.DataFrame(data=dataframe)

print(df)

我得到以下结果:

[['1 : 0'], ['2 : 0'], ['3 : 0'], ['3 : 1'], ['4 : 1'], ['5 : 1'], ['6:1'], 
 ['6 : 2']]
 --------------------------------------------------------------------------- 
 -------------------------
 [['Tjeerd Westdijk'], ['Emiel Wendt'], ['Brayen Bröcker'], ['Kenneth Misa- 
   Danso'], ['Sabir Achefay'], ['Sabir Achefay'], ['Denzel James'], 
   ['Kenneth Misa-Danso']]
   ------------------------------------------------------------------------- 
   ---------------------------

 Score                Player
0  [1 : 0]     [Tjeerd Westdijk]
1  [2 : 0]         [Emiel Wendt]
2  [3 : 0]      [Brayen Bröcker]
3  [3 : 1]  [Kenneth Misa-Danso]
4  [4 : 1]       [Sabir Achefay]
5  [5 : 1]       [Sabir Achefay]
6  [6 : 1]        [Denzel James]
7  [6 : 2]  [Kenneth Misa-Danso]

但我不想在 [ ] 中获取我的元素。我该如何解决这个问题?

谢谢。

最佳答案

您可以使用字典理解将列表的列表转换为单个列表,然后调用数据框构造函数:

pd.DataFrame({k:np.concatenate(v) for k, v in dataframe.items()})

或者:

import itertools
pd.DataFrame({k:itertools.chain.from_iterable(v) for k, v in dataframe.items()})

关于python - 如何在 python 中将两个列表转换为没有 ['xxx' ] 标签的数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57339092/

相关文章:

python - 使用热着色和文本值过滤 Altair 热图

python - Bootstrap 模态不更新模态内容

python - 按边距 ('All' ) 值列对 Pandas 数据透视表进行排序

python - 如何一次转换多个 Spark 数据框列类型?

python - 为什么 pandas dataframe describe().min 方法返回标准偏差?

python - TensorFlow:不可重复的结果

python - 在选择后从列表中删除项目的随机生成器

pandas - 如何在 Pandas 中创建日历表(日期维度)

python - Pandas:如何将多个模式(OR)与 np.where 匹配

python - 从 pandas DataFrame 中的列中减去平均值