如何重新排列python数据框中的行和列?

如何重新排列python数据框中的行和列?,python,python-3.x,pandas,dataframe,multiple-columns,Python,Python 3.x,Pandas,Dataframe,Multiple Columns,5000行192列的数据帧 我想将我的数据帧大小(m行和n列)(m=5000和n=192)更改为n/3行(64行)和m*5000列(15000列) 现有数据帧 0 A1 A2 A3 A4 A5 A6 A7 A8 A9.....A192 1 B1 B2 B3 B4 B5 B6 B7 B8 B9.....B192 . . . 5000 192 X1 X2 X3 X4 X5 X6 X7 X8 X9.....X192 0 A1 A2 A3 B1 B2 B3.....X1 X2 X3 1 A4 A5 A

5000行192列的数据帧

我想将我的数据帧大小(m行和n列)(m=5000和n=192)更改为n/3行(64行)和m*5000列(15000列)

现有数据帧

0 A1 A2 A3 A4 A5 A6 A7 A8 A9.....A192
1 B1 B2 B3 B4 B5 B6 B7 B8 B9.....B192
.
.
.
5000 192 X1 X2 X3 X4 X5 X6 X7 X8 X9.....X192
0 A1 A2 A3 B1 B2 B3.....X1 X2 X3
1 A4 A5 A6 B4 B5 B6.....X4 X5 X6
2 A7 A8 A9 B7 B8 B9.....X7 X8 X9
.
.
64 A190 A191 A192 B190 B191 B192.....X190 X191 X192
所需数据帧

0 A1 A2 A3 A4 A5 A6 A7 A8 A9.....A192
1 B1 B2 B3 B4 B5 B6 B7 B8 B9.....B192
.
.
.
5000 192 X1 X2 X3 X4 X5 X6 X7 X8 X9.....X192
0 A1 A2 A3 B1 B2 B3.....X1 X2 X3
1 A4 A5 A6 B4 B5 B6.....X4 X5 X6
2 A7 A8 A9 B7 B8 B9.....X7 X8 X9
.
.
64 A190 A191 A192 B190 B191 B192.....X190 X191 X192
IIUC,可以使用循环

pd.DataFrame([df.iloc[:, e:e+3].values.flatten() for e in range(0, 192, 3)])

我将使用
groupby

pd.DataFrame([y.values.ravel()for x , y in df.groupby(np.arange(df.shape[1])//3,axis=1)])
你可以试试:


df=pd.DataFrame(np.array([x.ravel()表示np.split中的x)(df.values,
df.shape[1]//3,轴=1)])

我对它进行了测试,它对我来说很好,尽管我不确定你所说的dfzperfect是什么意思。效果很好:)