python读取逐个单元格,存入数组
时间: 2025-06-08 08:15:03 浏览: 17
### Python 读取 Excel 或 CSV 单元格数据并存入 List 或 NumPy 数组
在 Python 中,可以使用多种库来读取 Excel 或 CSV 文件的数据,并将其存储到列表(List)或 NumPy 数组中。以下是具体实现方法:
#### 使用 `pandas` 读取 CSV 数据并存储到 NumPy 数组
`pandas` 是一个强大的数据分析库,能够轻松读取 CSV 文件并将其转换为 NumPy 数组。
```python
import pandas as pd
# 读取 CSV 文件
data = pd.read_csv('file.csv')
# 将 DataFrame 转换为 NumPy 数组
numpy_array = data.to_numpy()
print(numpy_array)
```
此代码片段展示了如何将 CSV 文件中的数据加载到 Pandas 的 DataFrame 中,然后通过 `to_numpy()` 方法将其转换为 NumPy 数组[^1]。
#### 使用 `csv` 模块读取 CSV 数据并存储到列表
Python 内置的 `csv` 模块可以直接读取 CSV 文件并将每一行数据存储到列表中。
```python
import csv
def read_csv_to_list(file_path):
result = []
with open(file_path, mode='r', newline='') as file:
reader = csv.reader(file)
for row in reader:
result.append(row)
return result
data_list = read_csv_to_list('file.csv')
print(data_list)
```
上述代码定义了一个函数 `read_csv_to_list`,它会逐行读取 CSV 文件并将每行数据作为列表元素存储到最终的列表中[^2]。
#### 使用 `xlrd` 读取 Excel 数据并存储到 NumPy 数组
对于 Excel 文件,可以使用 `xlrd` 库读取单元格数据,并将其存储到 NumPy 数组中。
```python
import xlrd
import numpy as np
def import_excel_matrix(path):
table = xlrd.open_workbook(path).sheets()[0]
row = table.nrows
col = table.ncols
datamatrix = np.zeros((row, col), dtype=float)
for i in range(col):
cols = np.matrix(table.col_values(i))
datamatrix[:, i] = cols
return datamatrix
data_file = 'file.xlsx'
data_matrix = import_excel_matrix(data_file)
print(data_matrix)
```
这段代码展示了如何从 Excel 文件中读取数据,并将其存储到 NumPy 数组中[^3]。
#### 使用 `openpyxl` 读取 Excel 数据并存储到列表
`openpyxl` 是另一个处理 Excel 文件的常用库,适合现代 Excel 文件格式(.xlsx)。
```python
from openpyxl import load_workbook
def read_excel_to_list(file_path):
workbook = load_workbook(filename=file_path)
sheet = workbook.active
data_list = []
for row in sheet.iter_rows(values_only=True):
data_list.append(list(row))
return data_list
data_list = read_excel_to_list('file.xlsx')
print(data_list)
```
该代码片段展示了如何使用 `openpyxl` 读取 Excel 文件中的数据,并将其存储到列表中。
#### 使用 `numpy` 和 `scipy` 读取 CSV 数据并存储到 NumPy 数组
`numpy` 提供了直接读取 CSV 文件的功能,可以通过 `genfromtxt` 或 `loadtxt` 方法实现。
```python
import numpy as np
# 使用 genfromtxt 读取 CSV 文件
numpy_array = np.genfromtxt('file.csv', delimiter=',', dtype=str)
print(numpy_array)
```
此代码片段展示了如何使用 `numpy` 的 `genfromtxt` 方法读取 CSV 文件,并将其转换为 NumPy 数组[^4]。
---
阅读全文
相关推荐













