我有csv的文件名叫作物。文件由4列组成,如下所述。
温度PH湿度适宜作物生长20.5 15 30.2稻谷21.5 16 26.6谷粒23.5 17 23.4玉米
因此,如果输入的温度、PH值和湿度分别为23.5、17和23.4,则应将产量显示为适宜种植的作物“玉米”。
提前感谢
发布于 2021-05-31 14:03:34
您可以使用Pandas快速完成此操作。
import pandas as pd
crops_data = pd.read_csv(FILEPATH)
temperature_input = float(input("Enter Temperature: "))
ph_input = float(input("Enter pH: "))
humidity_input = float(input("Enter Humidity: "))
data_filter = (crops_data["Temperature"] == temperature_input) & (crops_data["PH"] == ph_input) & (crops_data["Humidity"] == humidity_input)
suitable_crop = crops_data.loc[data_filter]["Suitable crop to Grow"].values[0]
print(suitable_crop)
有关如何使用它的更多信息,请查看熊猫文献。
尽管如此,潘达斯对于这样一个简单的任务还是觉得有点过分。
因此,您可以直接读取CSV并进行一些基本比较以获得数据。
CSV = []
with open(FILEPATH, 'r') as csv_file:
CSV = csv_file.read().split()[1:]
temperature_input = float(input("Enter Temperature: "))
ph_input = float(input("Enter pH: "))
humidity_input = float(input("Enter Humidity: "))
filter_string = "%g,%g,%g" % (temperature_input, ph_input, humidity_input)
filter_result : str
for LINE in CSV:
if filter_string in LINE:
filter_result = LINE.split(',')[-1]
print(filter_result)
您可以对filter_string
有一点创造性,以获得其他结果。
https://stackoverflow.com/questions/67774819
复制相似问题