python - 如何将函数应用于数据框列
问题描述
races = pd.read_csv("C:/Users/Sam/Documents/races.csv")
df_races = pd.DataFrame(races)
df_races = df_races[["raceId", "year", "name"]]
df_races = df_races.sort_values(by=['year'])
df_races = df_races[df_races['name'] == 'Australian Grand Prix']
# Australian Grand Prix 'Find Qualifying Data'
QLF = pd.read_csv("C:/Users/Sam/Documents/qualifying.csv")
df_QLF = pd.DataFrame(QLF)
df_QLF = df_QLF[["raceId", "position", "q1", "q2", "q3"]]
Race_Id_1 = df_races['raceId'].tolist()
# Filter Rows
df_QLF['Match'] = df_QLF["raceId"].isin(Race_Id_1)
def Find_Rid(row):
if row['Match'] == 'True':
return row
df_QLF = df_QLF.apply(Find_Rid, axis=1)
print(df_QLF)
一旦我运行这一切,我得到以下输出,实际上我想要的是当 df_QLF['Match'] column == 'True' 保留这些行并丢弃所有其他行
0 None
1 None
2 None
3 None
.... ....
我不明白为什么。
解决方案
df_QLF = df_QLF.loc[df_QLF['Match'] == True]
推荐阅读
- python - Matplotlib 在不同部分绘制具有不同颜色的连续图
- r - 在 Highcharts R 中叠加正态分布
- c++ - 带有默认参数的包装方法,该参数是指向另一个包装类型的空指针
- cmake - flatbuffers - 无法用 cygwin 编译
- reactjs - Mapbox react - 使用位置点列表显示路线并调整到最近的道路
- linux - 如何通过 gfortran 编译器编译/链接 ratfor 代码?
- python - Django'float'对象在使用登录装饰器时没有属性'user'
- c - 复制文件的c中的读/写程序,我认为复制时间太长
- python - Python 类型:文字类型参数的验证装饰器
- ssl - Tomcat 在仅使用 ssl 上传图像后重定向 URL