You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将DataFrame转换为两个NumPy数组:数据数组与列名数组

问题描述

我有一个.csv文件,希望将其转换为两个NumPy数组:一个存储表头名称,另一个存储数据内容。已经成功将文件读取为DataFrame格式,但不知道怎么把DataFrame转换成这两个数组。

读取DataFrame的代码如下:

import pandas as pd
from pathlib import Path

universal_path = Path(r"file\file\data.csv")
data = pd.read_csv(universal_path , sep = ';'  , skiprows = 0,  
                   encoding = 'ISO-8859-1', engine = 'python', header = 0 ) 
解决方案

利用Pandas和NumPy的内置属性/方法就能快速拆分出所需的两个数组:

1. 获取表头的NumPy数组

直接提取DataFrame的columns属性,再转换为NumPy数组:

import numpy as np

header_array = np.array(data.columns)

2. 获取数据的NumPy数组

使用to_numpy()方法(Pandas 0.24及以上版本推荐),或兼容旧版的values属性:

# 推荐用法
data_array = data.to_numpy()

# 旧版兼容写法
# data_array = data.values

完整示例代码

整合后的完整代码:

import pandas as pd
import numpy as np
from pathlib import Path

universal_path = Path(r"file\file\data.csv")
data = pd.read_csv(universal_path , sep = ';'  , skiprows = 0,  
                   encoding = 'ISO-8859-1', engine = 'python', header = 0 ) 

# 生成表头数组
header_array = np.array(data.columns)
# 生成数据数组
data_array = data.to_numpy()

# 可选:验证输出结果
print("表头数组:")
print(header_array)
print("\n数据数组:")
print(data_array)

内容的提问来源于stack exchange,提问作者Camille

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 22:22:04