[英]Convert list to dataframe (Pandas)
有什么办法可以将这种类型的输出转换为 Dataframe 吗? 输出:
[['A', 'B'], ['Orange', 'Apple']]
[['C', 'D'], ['Coconut', 'Lemon']]
[['E'], ['Mango', 'Strawberry']]
I want to turn the output into a dataframe like this:
` x1 X2
0 A,B Orange, Apple
1 C,D Coconut, Lemon
2 E Mango, Strawberry`
只需将此数据添加到列表中
import pandas as pd
data = [[['A', 'B'], ['Orange', 'Apple']],
[['C', 'D'], ['Coconut', 'Lemon']],
[['E'], ['Mango', 'Strawberry']]]
df = pd.DataFrame(data, columns=['x1', 'x2'])
所以 df 看起来像
x1 x2
0 [A, B] [Orange, Apple]
1 [C, D] [Coconut, Lemon]
2 [E] [Mango, Strawberry]
如果您的起始数据在列表中,并且您想用逗号连接每个列表,这应该有效:
l = [[['A', 'B'], ['Orange', 'Apple']],
[['C', 'D'], ['Coconut', 'Lemon']],
[['E'], ['Mango', 'Strawberry']]]
df = pd.DataFrame([[', '.join(v) for v in i] for i in l],columns = ['x1','x2'])
stack()
和str.join()
也是一个选项:
df = pd.DataFrame(l,columns = ['x1','x2']).stack().str.join(', ').unstack()
输出:
x1 x2
0 A, B Orange, Apple
1 C, D Coconut, Lemon
2 E Mango, Strawberry
简单修复:
pd.DataFrame(
{"x1":[["A", "B"], ["C", "D"], ["E"]],
"x2":[["Orange", "Apple"], ["Coconut", "Lemon"], ["Mango", "Strawberry"]]}
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.