我需要将我的列表转换成一个单列的 pandas 数据框。
当前列表(len=3):
['Thanks You',
'Its fine no problem',
'Are you sure']
需要 Pandas DF(形状 =3,):
0 Thank You
1 Its fine no problem
2 Are you sure
注意数字代表上面所需的 Pandas DF 中的索引。
用途:
L = ['Thanks You', 'Its fine no problem', 'Are you sure']
#create new df
df = pd.DataFrame({'col':L})
print (df)
col
0 Thanks You
1 Its fine no problem
2 Are you sure
df = pd.DataFrame({'oldcol':[1,2,3]})
#add column to existing df
df['col'] = L
print (df)
oldcol col
0 1 Thanks You
1 2 Its fine no problem
2 3 Are you sure
谢谢DYZ:
#default column name 0
df = pd.DataFrame(L)
print (df)
0
0 Thanks You
1 Its fine no problem
2 Are you sure
如果你的列表看起来像 [1,2,3],你可以这样做:
import pandas as pd
lst = [1,2,3]
df = pd.DataFrame([lst])
df.columns =['col1','col2','col3']
df
得到这个:
col1 col2 col3
0 1 2 3
或者,您可以创建一个列,如下所示:
import numpy as np
import pandas as pd
df = pd.DataFrame(np.array([lst]).T)
df.columns =['col1']
df
得到这个:
col1
0 1
1 2
2 3
pd.DataFrame()
方法并将您的列表作为参数传递。
import pandas as pd
l = ['Thanks You','Its fine no problem','Are you sure']
pd.DataFrame(l)
输出:
0
0 Thanks You
1 Its fine no problem
2 Are you sure
如果你有多个列表并且你想从中制作一个数据框。你可以这样做:
import pandas as pd
names =["A","B","C","D"]
salary =[50000,90000,41000,62000]
age = [24,24,23,25]
data = pd.DataFrame([names,salary,age]) #Each list would be added as a row
data = data.transpose() #To Transpose and make each rows as columns
data.columns=['Names','Salary','Age'] #Rename the columns
data.head()
输出:
Names Salary Age
0 A 50000 24
1 B 90000 24
2 C 41000 23
3 D 62000 25
例子:
['Thank You',
'It\'s fine no problem',
'Are you sure?']
代码块:
import pandas as pd
df = pd.DataFrame(lst)
输出:
0
0 Thank You
1 It's fine no problem
2 Are you sure?
不建议去掉 Pandas dataframe 的列名。但是,如果您仍然想要没有标题的数据框(根据您在问题中发布的格式),您可以这样做:
df = pd.DataFrame(lst)
df.columns = ['']
输出将是这样的:
0 Thank You
1 It's fine no problem
2 Are you sure?
或
df = pd.DataFrame(lst).to_string(header=False)
但是输出将是一个列表而不是数据框:
0 Thank You
1 It's fine no problem
2 Are you sure?
要将列表转换为 Pandas 核心数据框,我们需要使用 pandas 包中的 DataFrame 方法。
执行上述操作有不同的方式(假设Pandas导入为
pd
)
pandas.DataFrame({'Column_Name':Column_Data})
Data = pandas.DataFrame(Column_Data)`
Data.columns = ['Column_Name']
所以,对于上面提到的问题,代码片段是
import pandas as pd
Content = ['Thanks You',
'Its fine no problem',
'Are you sure']
Data = pd.DataFrame({'Text': Content})
list = ['Thanks You', 'Its fine no problem', 'Are you sure']
df = pd.DataFrame(list)
0
0 Thanks You
1 Its fine no problem
2 Are you sure
栏目名称:
df.columns = ['col name']