Python将列表转换为数组



我有一个5行5列的列表。

我正在尝试将此列表转换为数据帧。

当我尝试这样做时,它只占据了第一排。

这失败了,因为我把它设置为5:

df2 = pd.DataFrame(np.array(pdf_read).reshape(5,5),columns=list("abcde"))

当我把它切换到这个:

df2 = pd.DataFrame(np.array(pdf_read).reshape(1,5),columns=list("abcde"))

它只占据了第一排。

  1. 为什么要这样做
  2. 有什么建议吗

编辑:添加上下文

我正在使用python中的tabula模块来读取PDF文件。PDF文件的结果存储在变量pdf_read中。

当我执行len(pdf_read)时,它的长度为1,但当我键入print(pdf_read)它说它是5行x 5列,这很奇怪。

编辑#2:数据类型

我运行了以下内容:

print(type(pdf_read))
print(type(pdf_read[0]))

分别得到<class 'list'><class 'pandas.core.frame.DataFrame'>

我似乎在列表中有一个数据框。

我运行了这个代码:

df = pd.DataFrame(
pdf_read[0],columns=["column_a","column_b","column_c","column_d","column_e"]
)

这只是返回一个5,5数据帧,但每列中的所有值都是NaN。

取得了一些进展,但需要弄清楚为什么现在没有填充这些值。

EDIT:经过一些研究输出,pdf_read是数据帧列表。

因此,对于第一个DataFrame:

df = pdf_read[0]

相关内容

  • 没有找到相关文章

最新更新