我是 Python 的初学者,我正在学习一本教科书来学习 Pandas 模块。我有一个名为 Berri_bike 的数据框,它来自以下代码:
bike_df=pd.read_csv(os.path.join(path,'comptagevelo2012.csv'),parse_dates=['Date'],\
encoding='latin1',dayfirst=True,index_col='Date')
Berri_bike=bike_df['Berri1'].copy() # get only the column='Berri1'
Berri_bike['Weekday']=Berri_bike.index.weekday
weekday_counts = Berri_bike.groupby('Weekday').aggregate(sum)
weekday_counts
Run Code Online (Sandbox Code Playgroud)
我的 Berri_bilk 中有 3 列,一个数据索引 - 从 1/1/2012 到 12/31/2012,以及每个数据带有数字的值列,以及我分配给它的工作日列。但是当我想按值分组时,出现错误:ValueError: Grouper and axis must be same length,我不确定这是什么意思,我想做的很简单,就像在 SQL 中一样,sum(value)工作日分组...谁能告诉我这里发生了什么?
我有以下代码将所有csv文件名存储在特定文件夹的列表中
import pandas as pd
import re
import os
files = os.listdir('.')
filename=[filename for filename in files if filename.endswith('.csv')]
Run Code Online (Sandbox Code Playgroud)
但是,在我的文件夹中,我有两种类型的csv文件,一种以_20.cvs(或者也许是_18.csv,_01.csv)结尾,另一种以_Raw.csv结尾;
但是,我只需要列表中存储的第一种类型。我知道正则表达式可能会对此有所帮助,所以我做了一些Google搜索,并提出了以下代码,但似乎不起作用,有人可以提供建议吗?
filename = [re.search(r'^\d{2}.csv'),filename).group(0) for filename in files]
Run Code Online (Sandbox Code Playgroud)