迭代数据帧

时间:2017-09-30 15:49:30

标签: python pandas numpy dataframe machine-learning

我有多个培训和测试数据框架。

示例:train1,train2,train3到train10。测试相同。

我想迭代这些数据框,例如:(PS:代码错误但是给你一个想法):我不想将它们连接成一个。

for i in range(1,10):
    y%i = train%i['Labels']
    X%i = train%i.drop('Labels',axis=1)
    clf.fit(X%i,y%i)
    output%i = clf.predict(test%i)

可以吗?

1 个答案:

答案 0 :(得分:1)

试试这个...同样,我认为你不需要像X,Y那样恢复中间变量

variables = locals()
for i in list(range(1,11)):
    variables["y{0}".format(i)]= variables["train{0}".format(i)]['Labels']
    variables["x{0}".format(i)]= variables["train{0}".format(i)].drop('Labels',1)
    clf.fit(variables["x{0}".format(i)], variables["y{0}".format(i)])
    variables["output{0}".format(i)]= clf.predict(variables["x{0}".format(i)], variables["y{0}".format(i)])

我会做什么

variables = locals()
for i in list(range(1,11)):
    y= variables["train{0}".format(i)]['Labels']
    x= variables["train{0}".format(i)].drop('Labels',1)
    clf.fit(x,y)
    variables["output{0}".format(i)]= clf.predict(x,y)