Python Windows用户:未找到csv文件
我正在尝试从2个文件夹中提取CSV文件。以下代码返回一条错误消息: [Errno 2]文件b'aws_hourly_20170501.csv'不存在:b'aws_hourly_20170501.csv' 当我使用windows时,我认为这可能是一个语法问题。有什么想法吗?Python Windows用户:未找到csv文件,python,csv,file-not-found,Python,Csv,File Not Found,我正在尝试从2个文件夹中提取CSV文件。以下代码返回一条错误消息: [Errno 2]文件b'aws_hourly_20170501.csv'不存在:b'aws_hourly_20170501.csv' 当我使用windows时,我认为这可能是一个语法问题。有什么想法吗? 谢谢大家! 我想这与Windows本身无关。 来,你在干什么 filepath=[f代表listdir(path)中的f,如果f.endswith('.csv')] 其中,filepath列表只是名为path的目录下csv
谢谢大家! 我想这与Windows本身无关。
来,你在干什么
filepath=[f代表listdir(path)中的f,如果f.endswith('.csv')]
其中,filepath
列表只是名为path
的目录下csv文件的名称列表。
你应该保持原样
filepath=[os.path.join(path,f)表示listdir(path)中的f,如果f.endswith('.csv')]
这将使文件路径
成为所有文件及其各自路径的列表。
PS:别忘了先导入操作系统模块非常感谢您的修复程序运行得非常好!我还尝试只连接给定气象站的数据。station number是我的数据帧中的一个特定列。你知道实现这一目标的方法吗?它将以这种方式开始:
station=int(输入(“station number?”)
,然后在代码中包含站点选择,以便返回行数较少的数据帧。在这段代码的另一个较慢版本中,我用以下代码调用了电台号码:df=df[df.station\u number==station]
,但我不确定在这种情况下将选择应用到哪里`hi@GuillaumeRouja,我无法理解这个查询。你能再详细一点吗?当然,@Siddhesh Suhas Sathe,我已经用选择的电台编辑了上面的代码。我想插入一行代码,这样我就只能使用类似于df=df[df.station\u number==station]
的东西来提取特定站点的数据,所以实际上我不需要连接所有数据,而是同时使用map(pd.read\u csv,filepath)
&连接,我想在中间添加一个步骤来选择要连接的行,因为运行时间很长,所以如果有意义的话,我想连接较少的数据。这个想法是让basic有一个代码来实现这一点:df=pd.concat(map(pd.read\u csv,filepath)),如果df=df[df.station\u number==station]
(我将站点作为向用户询问的参数。它对应于我希望在730 csv文件中连接的特定行)
station = int(input("station number? "))
def Datastations (station,path):
filepaths = [os.path.join(path, f) for f in listdir(path) if
f.endswith('.csv')]
***Selection of the station***
df = pd.concat(map(pd.read_csv, filepaths))
return (df)
df1 = Datastations(station,"refdata/obs")
df2 = Datastations(station,"refdata/BoM_ETA_20160501-20170430/obs")**