我正在尝试使用 scikit-learn 开发一个简单的分类程序。我想提取我的一组 tsv 值,将它们保存在一个数组中。然后,从上面保存一个包含我的 tsv 的第一个值的 csv 和简单的随机 1 或 0。因此它将按如下方式输出到 csv:
tsvValue1, random1or0 eg
string123, 0
foo234, 1
我将所有代码(几乎)分开,我的问题是将它们组合在一起。
import numpy as np
from sklearn import metrics,preprocessing,cross_validation
import pandas as p
loadData = lambda f: np.genfromtxt(open(f,'r'), delimiter=' ')
def main():
traindata = list(np.array(p.read_table('../data/train.tsv'))[:,2])
testdata = list(np.array(p.read_table('../data/test.tsv'))[:,2])
y = np.array(p.read_table('../data/train.tsv'))[:,-1]
X_all = traindata + testdata
# What can I do below? What can I use to export to csv
# properly with an appended 1 or 0 value below ?
from random import randint
randomInt = randint(0,1) #Inclusive
testfile = p.read_csv(
'../data/test.tsv', sep="\t", na_values=['?'], index_col=1)
pred_df = p.DataFrame(testdata, index=testfile.index, columns=['label'])
pred_df.to_csv('test.csv')
print ("your random file has been created..")
if __name__=="__main__":
main()
更新:输入 tsv 文件的标准格式:
foo1 foo2 foo3 foo4 fooN
RelevantString123123123
RelevantString456456456
RelevantString789789789
所需结果 csv 的格式:
RelevantString123123123,1
RelevantString456456456,0
RelevantString789789789,1
随机生成的 csv 文件中的第二个 1 或 0。