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

如何用TensorFlow读取Excel文件?求类似MATLAB xlsread的简便命令

用TensorFlow读取Excel文件并训练ANN的方法

嘿,从MATLAB转用Python的话,确实会想找和xlsread一样顺手的工具!TensorFlow本身并没有直接读取Excel文件的API,但我们可以借助pandas这个超级实用的数据处理库——它的read_excel函数和MATLAB的xlsread几乎一样简便,之后再把数据转换成TensorFlow能直接使用的格式就行。下面一步步来:

1. 先安装必要的库

首先得确保你装了pandas和处理Excel的依赖库(比如openpyxl用来读取.xlsx文件),在终端里运行:

pip install pandas openpyxl

2. 读取Excel文件(对应MATLAB的xlsread)

用pandas读取Excel就像用xlsread一样简单,示例代码如下:

import pandas as pd

# 读取整个工作表,sheet_name可以是工作表名称(比如"Sheet1")或者索引(比如0)
df = pd.read_excel("your_file.xlsx", sheet_name="Sheet1")

# 如果只需要提取数值数据(和xlsread默认返回的数值矩阵一致),可以转成numpy数组
data = df.values

小提示:如果你的Excel没有表头,记得加上header=None参数,避免把第一行数据当成表头处理。

3. 转换为TensorFlow可用的张量

拿到numpy数组后,直接转成TensorFlow张量就可以用于模型训练了:

import tensorflow as tf

# 将numpy数组转为TensorFlow张量,dtype可以根据你的数据类型调整(比如float32)
tf_data = tf.convert_to_tensor(data, dtype=tf.float32)

# 通常我们需要拆分特征和标签(假设最后一列是标签)
features = tf_data[:, :-1]  # 所有行,除了最后一列的所有列
labels = tf_data[:, -1]     # 所有行的最后一列

4. 数据预处理(训练ANN的关键步骤)

和MATLAB训练模型一样,数据要先清理好:

  • 处理缺失值:可以删除含缺失值的行df = df.dropna(),或者用均值/中位数填充df = df.fillna(df.mean())
  • 标准化/归一化:如果特征数值范围差异大,建议做标准化,比如:
    from sklearn.preprocessing import StandardScaler
    scaler = StandardScaler()
    scaled_features = scaler.fit_transform(features.numpy())
    scaled_features = tf.convert_to_tensor(scaled_features, dtype=tf.float32)
    

5. 用数据训练ANN

最后就是搭建并训练模型了,给个简单的示例:

# 搭建一个简单的人工神经网络
model = tf.keras.Sequential([
    tf.keras.layers.Dense(64, activation='relu', input_shape=(scaled_features.shape[1],)),
    tf.keras.layers.Dense(32, activation='relu'),
    tf.keras.layers.Dense(1)  # 如果是分类任务,这里改成类别数,激活函数用softmax
])

# 编译模型,根据任务选损失函数和优化器
model.compile(optimizer='adam', loss='mean_squared_error')  # 回归任务用MSE,分类用交叉熵

# 开始训练
model.fit(scaled_features, labels, epochs=50, batch_size=8, validation_split=0.2)

这样一套流程下来,就和你在MATLAB里用xlsread读数据然后训练模型的逻辑完全对应上啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:13:04