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

如何将多份CSV文件特征整合到X_train用于房价预测

整合多区域房屋数据与坐标生成训练用numpy数组X_train

以下是用Python的pandas和numpy完成需求的具体步骤:

1. 导入依赖库

import pandas as pd
import numpy as np

2. 加载并合并多区域房屋数据

假设每个房屋CSV文件对应一个区域,文件包含Bedrooms、Gardens及房价列(比如Price),批量读取并合并数据,同时标记数据所属区域:

# 定义区域房屋文件列表
house_files = ['Duckez.csv', 'Vim.csv', 'Hustla.csv', 'Zedrim.csv']

# 批量读取并添加区域标识列
house_dfs = []
for file in house_files:
    area_name = file.replace('.csv', '')
    df = pd.read_csv(file)
    df['Area'] = area_name  # 添加区域列用于匹配坐标
    house_dfs.append(df)

# 合并所有房屋数据为一个DataFrame
merged_house_df = pd.concat(house_dfs, ignore_index=True)

3. 加载坐标数据并关联房屋数据

假设coordinate.csv包含Area、Latitude、Longitude三列,对应每个区域的经纬度:

# 加载坐标数据
coord_df = pd.read_csv('coordinate.csv')

# 按区域列合并房屋数据与坐标数据
combined_df = pd.merge(merged_house_df, coord_df, on='Area', how='inner')

4. 提取特征并转换为numpy数组

从合并后的DataFrame中提取目标特征,转换为模型训练用的X_train:

# 提取需要的特征列
feature_cols = ['Bedrooms', 'Gardens', 'Latitude', 'Longitude']
X_train = combined_df[feature_cols].to_numpy()

# 可选:提取房价作为训练标签y_train
y_train = combined_df['Price'].to_numpy()

注意事项

  • 确保房屋数据的区域标识与coordinate.csv中的Area值完全匹配,若CSV无区域列,直接用文件名(去掉.csv)作为区域名即可。
  • 处理缺失值:根据需求选择删除或填充,示例:
    # 删除含缺失值的行
    combined_df = combined_df.dropna(subset=feature_cols + ['Price'])
    # 用均值填充数值型缺失值
    combined_df[feature_cols] = combined_df[feature_cols].fillna(combined_df[feature_cols].mean())
    
  • 数据类型校验:确保Bedrooms、Gardens为数值类型,若为字符串需转换:
    combined_df['Bedrooms'] = pd.to_numeric(combined_df['Bedrooms'], errors='coerce')
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 21:48:18