我正在实施一个程序,询问用户的症状(是否发烧,咳嗽,呼吸问题),以检查他们是否需要冠状病毒检测。
我实现了我的id3决策树,使用了csv文件中的一些数据集
现在我希望这个程序可以提示用户输入他们的症状(是否发烧,咳嗽,呼吸问题),并告诉他们一些信息
我的代码附在下面,问题是当我运行它时,出现了错误消息,我认为这是因为我的txt文件中只有一个数据集
pandas.errors.EmptyDataError: No columns to parse from file
我可以问一下,我如何解决它,或者他们是一个更好的方法来决定只有一个数据?
谢谢!
fever = input("Do you have a fever? (Yes or No) ")
cough = input("Do you cough? (Yes or No) ")
breathing_issue = input("Do you have short breating or other breathing issues? (Yes or No) ")
infected = "Yes"
test_sample = fever + "," + cough + "," + breathing_issue + "," +infected
f = open("test.txt", "w")
f.write(test_sample)
# convert to .csv
test_df = pd.read_csv(r'/Users/xxxx/xxxx/xxxx/test.txt', header=None, delim_whitespace=True)
train_df.columns = ['fever', 'cough', 'breating-issue', 'infected']
pd.set_option("display.max_columns", 500) # Load all columns
发布于 2021-04-19 21:36:23
发生这种情况的原因是因为第7-9行读取了一个空的数据帧。下面是一个演示错误的最小可重现示例:
import pandas as pd
with open("test.txt", "w") as _fh:
_fh.write("yes,no,yes,no")
df = pd.read_csv("test.txt")
print(df)
输出:
Empty DataFrame
Columns: [yes, no, yes.1, no.1]
Index: []
要获得非空的DataFrame,要么列需要名称,要么需要使用可选参数header=None
调用pd.read_csv
。以下是列名的编写版本:
import pandas as pd
with open("test.txt", "w") as _fh:
_fh.write("fever,cough,breathing_issues,infected\n")
_fh.write("yes,no,yes,no")
df = pd.read_csv("test.txt")
print(df)
输出:
fever cough breathing_issues infected
0 yes no yes no
https://stackoverflow.com/questions/67154508
复制相似问题