将dataframe.to_numpy()与特定的数据类型关联起来

2024-04-19 21:22:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含两列的数据框:

  In[] df.head()

  Out[]      specific_death   months_survival
       0         False            179
       1         False            127
       2         False            67
       3         True             111
       4         False            118

第一列有布尔值,第二列有整数。如果我使用以下命令将数据帧转换为numpy ndarray:

array_from_df = df.to_numpy()

我得到一个非结构化的numpy.ndarray。因此,如果我写:

array_from_df.dtype.fields 

结果是非类型。为了让我的程序工作,我需要一个结构化数组,第一个字段是np.bool类,第二个字段是np.int。在我看来,有两种选择,但我找不到任何一种方法:

选项一

使用正确的数据类型直接从Pandas.DataFrame转换为结构化numpy.ndarray

选项二

将Pandas.DataFrame转换为非结构化numpy.ndarray,然后将其转换为结构化numpy.ndarrayI found another SO question关于这个问题,但我无法在代码中复制答案


Tags: 数据infromnumpyfalsedataframepandasdf
2条回答

在第一个单元格中,让键行以测试方法的名称开头,以下字段将用于参数名称映射。 所有包含行的测试数据必须以第一列中的空单元格开头

只需在ExcelDataLoader.loadFromSpreadsheet()ExcelDataLoader.initializeRowData()Documentation处查看源代码

我认为最好在用setUp()方法测试之前从excel文件中获取实际数据。因此,您可以在运行时同时获取列名和数据。但在这种情况下,您必须手动迭代值

另外,请看一下ApachePOI框架以处理excel文件

相关问题 更多 >