[英]How to extract csv data with input() function in python
我目前正在尝试使用csv数据在python中制作基于健壮的基于输入的图形。 我已经能够成功导入数据,并具有input()函数的功能,但是我希望该函数使用匹配的数据点,以便以后可以对其进行图形化处理。 目前,我希望从DOI中获取一个感兴趣的日期,我希望python从下一列中获取后续数据并将其绘制在图形上。 我已经尝试过使用for循环,目前正在尝试通过定义函数来实现这一点。 是否可以让python执行此操作? 还是我需要重新定义如何获取“ y”数据?
csv示例:日期值
2006001 12345
2006002 13452
2006003 12567
到目前为止,这是我的代码(仅用于获取数据):
import numpy as np
import matplotlib.pyplot as plt
import os
os.chdir("/Users/misi7940/Downloads/")
masie_df=pd.read_csv("masie (1).csv", skiprows=[0])
#masie_df.info()
x=masie_df[['yyyyddd']]
y=masie_df[[' (0) Northern_Hemisphere']]
def date():
DOI=input("what is your date of interest?")
for row in masie_df:
if DOI == row[1]:
print(row)
date()
我不确定整个脚本的工作方式,但是您需要在Pandas中使用.loc来获得查找结果。
以下是一些(未试用的)代码可能会帮助您:
import os
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ddict = {
'date':['2006001','2006002','2006003',],
'value':['12345','13452','12567',],
}
masie_df = pd.DataFrame(ddict)
def date():
while True:
print('what is your date of interest? [yyyyddd format]')
DOI = input('>>> ')
if len(DOI) == 7:
for i in masie_df:
if DOI in masie_df['date']:
print(masie_df.loc[masie_df['date'] == DOI]['value'])
else:
print('Please enter a valid date format or [Q] to quit.')
DOI = input('>>> ')
if DOI.lower() in ['q','quit','',]:
break
print('Goodbye!')
if __name__ == '__main__':
date()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.