来自pandas.to_csv函数的额外分隔符

时间:2015-07-02 12:11:08

标签: python pandas

我有一个数据集,我试图分成训练和测试集。 我已经制作了以下脚本来分割数据:

import pandas as pd
import numpy as np 

data_path = "/path_to_data/"

df = pd.read_csv(data_path+"product.dlm", header=0, delimiter="|")
ts =  df.shape 
# print "data dimension", ts
# print "product attributes \n", train.columns.values 


#shuffle data set, and split to train and test set. 
new_train = df.reindex(np.random.permutation(df.index))

indice_90_percent = int((ts[0]/100.0)* 90)


new_train[:indice_90_percent].to_csv('train_products.txt',header=True, sep="|")
new_train[indice_90_percent:].to_csv('test_products.txt',header=True, sep="|")

原始文件看起来像

label1|label2|...|labeln
371658|description|...|"some value"

to_csv()生成的文件 在开头有一个没有名字的额外列,看起来像这样

|label1|label2|...|labeln|
452488|422932|description|...|"some value"|

我错过了什么?

1 个答案:

答案 0 :(得分:2)

添加new_train[indice_90_percent:].to_csv('test_products.txt',header=True, sep="|", index=False) 解决了问题:

{{1}}