簡體   English   中英

如何將列表中的每n個術語轉換為Pandas import中的一列?

[英]How do I transpose every nth term in a list to a column from Pandas import?

我導入了一些數據。 它只是一行

 Jane  
 M  
 52,000 
 NYC 
 Mike  
 M  
 38,000 
 LA  

依此類推,我有1000行

我該怎么做

Name Sex salary City 
Jane  M  52,000 NYC 
Mike  M  38,000 LA   

因此,我猜每5行將其列為一列。

謝謝

簡單地reshape

a = df['column_name'].to_numpy().reshape(-1, 4)

請注意,上面的4表示4列,看起來像是您編輯后的內容。 以前,您好像有5列。 只要適應你所擁有的


使它成為一個DataFrame

pd.DataFrame(a, columns=['Name', 'Sex', 'salary', 'City'])

由於您的問題定義不明確,並且在編輯后發生了很大變化,因此希望以上內容可以幫助您找到所需的線索

你需要抓住5個元素(每個子系列iloc[]改造他們( .T )和concat他們。

data = pd.concat([df.iloc[s:s+4].reset_index(drop=True).T for s in range(0,len(df), 5)]).reset_index(drop=True)
data.columns = ['Name', 'Sex', 'City', 'Salary']
data['Sex'] = data['Sex'].str[0]

輸出:

    Name    Sex     City    Salary
0   MiKE    M       NYC     52,000
1   MiKE    M       NYC     52,000

暫無
暫無

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

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