簡體   English   中英

將列表轉換為 Pandas Dataframe 列

[英]Convert List to Pandas Dataframe Column

我需要將我的列表轉換為單列 pandas dataframe。

當前列表(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()

方法並將您的列表作為參數傳遞。

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

例子:

['Thanks You',
 'Its fine no problem',
 'Are you sure']

代碼塊:

import pandas as pd
df = pd.DataFrame(lst)

輸出:

    0
0   Thanks You
1   Its fine no problem
2   Are you sure

不建議刪除熊貓數據框的列名。 但是,如果您仍然想要沒有標題的數據框(按照您在問題中發布的格式),您可以這樣做:

df = pd.DataFrame(lst)    
df.columns = ['']

輸出將是這樣的:

0   Thanks You
1   Its fine no problem
2   Are you sure

或者

df = pd.DataFrame(lst).to_string(header=False)

但輸出將是一個列表而不是一個數據框:

0           Thanks You
1  Its fine no problem
2         Are you sure

希望這可以幫助!!

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']

對於將列表轉換大熊貓核心數據幀,我們需要從熊貓包用數據幀的方法。

有不同的方法來執行上述操作。

將熊貓導入為 pd

  1. pd.DataFrame({'Column_Name':Column_Data})
  • 列名稱:字符串
  • Column_Data :列表表單
  1. 數據 = pd.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})

您還可以assign()一個列表到現有的 dataframe。如果您鏈接多個方法並且您需要分配一個您需要在鏈中稍后使用的列,這將特別有用。

df = pd.DataFrame()
df1 = df.assign(col=['Thanks You', 'Its fine no problem', 'Are you sure'])

資源

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM