错误='str'对象没有'to_frame'属性

2024-09-24 22:28:23 发布

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

免责声明:我是Python新手,所以这可能在很多方面都是错误的

问题:我希望将csv上载到python,将数据拆分为测试和训练集,然后将测试和训练集导出到两个单独的csv文件中。我有以下代码:

import pandas as pd
    
dataset = pd.read_csv('data.csv')

# Dividing dataset into label and feature sets
X = dataset.drop('Bankrupt?', axis = 1) # Features
Y = dataset['Bankrupt?'] # Labels

# Normalizing numerical features so that each feature has mean 0 and variance 1
feature_scaler = StandardScaler()
X_scaled = feature_scaler.fit_transform(X)

# Dividing dataset into training and test sets
X_train, X_test, Y_train, Y_test = train_test_split( X_scaled, Y, test_size = 0.3, random_state = 100)

#Export to csv
X_train = pd.DataFrame.to_csv(r'file path where csv is to be stored\training.csv', index = False)
X_test = pd.DataFrame.to_csv(r'file path where csv is to be stored\test.csv', index = False)

但我一直得到以下错误:“str”对象没有“to_frame”属性

我做错了什么,或者有没有更好的方法来达到同样的效果


Tags: andcsvtotest错误setstraindataset
2条回答

Dataframe是数据帧,不是实例to_csv是一种从实例调用的实例方法。如果您将其作为类方法调用(正如您所做的那样),则其第一个参数必须是数据帧

这两种方法中的任何一种都应该有效:

dataset.to_csv(r'file path ...)   # This is the intended use
pd.DataFrame.to_csv(dataset, r'file path ...)   # Harder to read and more prone to error

to_csvDataFrame上的一个方法,所以我认为您在最后两行中是指dataset.to_csv而不是pd.DataFrame.to_csv

相关问题 更多 >