【发布时间】:2018-04-28 06:12:33
【问题描述】:
我正在练习 Pandas,有以下任务:
创建一个列表,其元素是每个 .csv 文件的列数
.csv 文件存储在字典 directory 按年份键入
我使用字典理解 dataframes(再次按年份键入)将 .csv 文件存储为 pandas 数据帧
directory = {2009: 'path_to_file/data_2009.csv', ... , 2018: 'path_to_file/data_2018.csv'}
dataframes = {year: pandas.read_csv(file) for year, file in directory.items()}
# My Approach 1
columns = [df.shape[1] for year, df in dataframes.items()]
# My Approach 2
columns = [dataframes[year].shape[1] for year in dataframes]
哪种方式更“Pythonic”?还是有更好的方法来解决这个问题?
【问题讨论】:
-
你能用
[df.shape[1] for df in dataframes.values()]吗? -
@PeterGibson 这正是我想要的!不知道有
dict.values()方法
标签: python pandas loops dictionary key