Python 将列表转换为数组

Python Converting a List into an Array

我有一个 5 行 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列,非常st运行ge.

编辑 #2:数据类型

我运行以下:

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

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

看来我在列表中有一个 Dataframe。

我运行这个代码:

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

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

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

编辑:经过一些research输出pdf_read是数据帧列表。

所以首先 DataFrame:

df = pdf_read[0]