[英]Transpose every nth rows from one column to multiple columns using pandas
有人可以建議我如何使用 pandas 將每 n 行從一列轉換為多列。 假設我有一個 dataframe 包含以下內容: -
指數 | 0 |
---|---|
0 | 275 |
1 | 0.81 |
2 | 388 |
3 | 2.26 |
4 | 275 |
5 | 0.93 |
6 | 447 |
7 | 2.60 |
8 | 275 |
9 | 1.05 |
10 | 500 |
11 | 2.91 |
12 | 275 |
13 | 1.15 |
14 | 549 |
15 | 3.20 |
所需的 output:-
指數 | “一個” | “乙” | “C” | “D” |
---|---|---|---|---|
0 | 275 | 0.81 | 388 | 2.26 |
1 | 275 | 0.93 | 447 | 2.60 |
2 | 275 | 1.05 | 500 | 2.91 |
3 | 275 | 1.15 | 549 | 3.20 |
我試過pd.wide_to_long
但它沒有用。
df3 = pd.wide_to_long(df, stubnames= '0', i='index', j='id')
任何意見是極大的贊賞。 謝謝你。
已經回答了另一個問題:
print (pd.DataFrame(df.values.reshape(-1, 4),
columns=['A','B','C','D']))
在這里檢查:
您可以使用np.reshape()
function 來完成。 請按照給定的步驟:
第 1 步:將您的 dataframe 列數據轉換為 numpy 數組
import numpy as np
arr = np.array(df[0]
第 2 步:然后將此數組數據重塑為所需的列數
array2 = np.reshape(arr, (4, 4)) # here (4, 4) are the number of rows and columns
第 3 步:為您的重構數組創建一個新的數據框
df3 = pd.DataFrame(array2, columns = {'A', 'B', 'C', 'D'})
現在您的舊數據框已更改為您想要的列數的數據框。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.