将 4*1 数据帧重塑为 2*2 数据帧

Reshaping 4*1 dataframe into 2*2 dataframe

我的数据框如下

df_testcase = pd.DataFrame(['16SCSE102014','15/03/2019','16SCSE101350','15/03/2019'])

Initial dataframe

我需要将它转换成 2*2 数据帧

Expected dataframe

有人可以帮忙吗? 谢谢

我不确定是否有一种简单的方法可以使用 pandas 数据框来做到这一点。但是你可以这样使用 numpy 来做到这一点:

import pandas as pd
import numpy as np
df = pd.DataFrame({'the_only_column':[1,'a',2,'b',3,'c']})

np_array = np.array(df['the_only_column'])
np_array = np.reshape(np_array, (np_array.shape[0]//2, 2))

df = pd.DataFrame(np_array, columns=['new_column_name', 'other_column_name'])
print(df)

输出为:

  new_column_name other_column_name
0               1                 a
1               2                 b
2               3                 c

你真的应该包括一个你正在谈论的例子,并遵循评论中的建议..

至于你说的是什么:

# If res is your (4,1) DataFrame, you can just do
res = df2.values.reshape(2,2)
df = pd.DataFrame(res)