Pandas中指定行与列的打印问题求助
解决CSV数据筛选问题的方法
我来帮你搞定这个筛选需求~你之前用data.df.iloc[0:5, 1:4]只能按位置提取行和列,没办法根据Year的值做条件筛选,所以得换个思路:先挑出Year等于2002的行,再取前5行和指定列,具体代码可以这么写:
# 先筛选Year=2002的所有行,再取前5行,最后选择目标列 result = data.df[data.df['Year'] == 2002][['Month', 'Day', 'Year']].head(5) print(result)
代码细节解释:
data.df['Year'] == 2002:这是布尔索引,会生成一个布尔数组标记哪些行的Year值符合要求,用它过滤DataFrame就能得到所有Year=2002的行。[['Month', 'Day', 'Year']]:直接指定要提取的列名,比用iloc按位置选更直观,还能避免列顺序变化导致的错误。.head(5):从筛选后的结果里取前5行,正好匹配你的需求。
额外小提醒:
如果你的Year列存储的是字符串类型(比如值是'2002'而不是数字2002),记得把条件改成data.df['Year'] == '2002',不然会筛选不到数据哦~
内容的提问来源于stack exchange,提问作者royalblue
相关产品推荐
相关产品推荐

