对于上下文,我试图过滤掉仅属于2021年的数据框中的行。
这是我的脚本代码:test = all_SS_batting_columns.loc[all_SS_batting_columns['Year'] == '2021']
但是它只返回:
Empty DataFrame
Columns: [index, Year, Age, Tm, Lg, G, PA, AB, R, H, 2B, 3B, HR, RBI, SB, CS, BB, SO, BA, OBP, SLG]
Index: []
为了以防万一,下面是我的数据框架的样子:
index Year Age Tm Lg G ... CS BB SO BA OBP SLG
0 0 2016 23.0 CHW AL 99 ... 2 13 117 0.283 0.306 0.432
1 1 2017 24.0 CHW AL 146 ... 1 13 162 0.257 0.276 0.402
2 2 2018 25.0 CHW AL 153 ... 8 30 149 0.240 0.281 0.406
3 3 2019 26.0 CHW AL 123 ... 5 15 109 0.335 0.357 0.508
4 4 2020 27.0 CHW AL 49 ... 2 10 50 0.322 0.357 0.529
5 5 2021 28.0 CHW AL 88 ... 7 18 87 0.299 0.332 0.437
6 6 6 Yrs NaN NaN NaN 658 ... 25 99 674 0.283 0.312 0.442
7 7 162 Game Avg. NaN NaN NaN 162 ... 6 24 166 0.283 0.312 0.442
8 0 2019 21.0 TOR AL 46 ... 4 14 50 0.311 0.358 0.571
9 1 2020 22.0 TOR AL 29 ... 1 5 27 0.301 0.328 0.512
[10 rows x 21 columns]
复制df name查看所有列:
test = all_SS_batting_columns[all_SS_batting_columns.loc[all_SS_batting_columns['Year'] == '2021']]
可以用where
代替loc
。
test = all_SS_batting_columns.where[all_SS_batting_columns['Year'] == '2021']
如果要为Year 2021筛选Dataframe,请使用-不需要使用loc
test = all_SS_batting_columns[all_SS_batting_columns['Year'] == '2021']
test