为什么我的代码不能同时在终端和spyder IDE上执行?

2024-04-26 00:50:09 发布

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

我在SypderIDE(UbuntuOS)上使用Python3.5中的ML技术分析这个数据集,我的程序应该可以正常工作(与tutorial program完全匹配),但运行时它什么也不做—什么都不会被打印或返回。spyder IDE的控制台显示以下内容,之后不执行任何操作:

runfile('/media/username/Laniakea/Projects/Training/SPYDER/classifier/sk_classifier.py', wdir='/media/username/Laniakea/Projects/Training/SPYDER/classifier')

我曾经在一个新程序开始运行时得到这个结果,然后输出,但是在这里,我什么也没有得到。我的程序:

from sklearn import svm
import pandas as pd
import numpy as np

df_pickled_train2 = pd.read_pickle('df_train.pickle')
df_pickled_test2 = pd.read_pickle('df_test.pickle')

df_pickled_train2_y = pd.read_pickle('df_train_y.pickle')
df_pickled_test2_y = pd.read_pickle('df_test_y.pickle')

X = np.array(df_pickled_train2)
y = np.array(df_pickled_train2_y)

X_test = np.array(df_pickled_test2)
y_test = np.array(df_pickled_test2_y)

clf = svm.SVC(kernel='linear')
clf.fit(X,y.ravel())

print(clf.score(X_test,y_test))
print("Done")

如果您想查看pickle是如何创建的(而且这个程序运行得很好-它甚至可以打印出最后一行“Done”或任何我想打印的内容):

import pandas as pd
import numpy as np

df_train = pd.read_csv('Adult-Incomes/train-labelled-final-variables-condensed-coded-countries-removed-unlabelled-income-to-the-left-relabelled-copy.csv')
df_test = pd.read_csv('Adult-Incomes/test-final-variables-cleaned-coded-copy-unlabelled.csv')

df_train_no_y = df_train.drop('Income',1)
df_test_no_y = df_test.drop(df_test.columns[0],axis=1)

df_train_y = pd.DataFrame(df_train['Income'])
df_train_y.to_pickle('df_train_y.pickle')

df_test_y = df_test[df_test.columns[0]]
df_test_y.to_pickle('df_test_y.pickle')

df_test_no_y.to_pickle('df_test.pickle')
df_train_no_y.to_pickle('df_train.pickle')

print ("DONE")

PS:即使从终端运行,它也只是执行,但什么也不做。这意味着,在终端中,光标将转到下一行并打印输出,然后提示输入另一个命令,但在这里,它只是停留在那里。它甚至没有挂起,因为光标闪烁,计算机没有挂起。感觉就像,代码不知何故把执行者送进了一个地狱。你知道吗

p.p.S:我甚至怀疑它运行的是一个复杂的算法,真的需要时间,所以把它留到了晚上。那时候什么也没发生。你知道吗

有人能告诉我为什么我的程序不能运行或显示任何东西吗?你知道吗


Tags: totestimport程序dfreadasnp