python-3.x - 用数组获取对应的字段元素
问题描述
我有一个像列photo_x
和combine
其他字段一样的表。
photo_x
每行都是唯一的。现在我有一个photo_x
值数组,例如["a.jpg","b.jpg", "c.jpg"]
作为输入,我想combine
在与输出相同的行中获取相应的字段(这是一个数组)。
我可以使用下面的代码来完成任务,但是有更简洁的方法吗?
combine_field_values=[]
for name in ["a.jpg","b.jpg", "c.jpg"]:
combine_field_values.append(df_train[df_train['photo_x']==name]['combine'])
解决方案
与isin
_Categorical
s=df_train.loc[df_train['photo_x'].isin(["a.jpg","b.jpg", "c.jpg"]),['combine','photo_x']]
s.photo_x=pd.Categorical(s.photo_x, ordered=True,categories=["a.jpg","b.jpg", "c.jpg"])
s.sort_values(photo_x).combine.values
推荐阅读
- spring-boot - 有没有办法将 Azure Functions 中的文件名 local.settings.json 更改为不同的名称
- algorithm - 写[(m + n)^m] / m是否有效!作为 O([n / m]^m) 作为其宽松的上限?
- javascript - 表格宽度:100% 调整窗口大小
- javascript - 我们如何使用方向服务在 Google 地图中应用动态折线颜色
- azure-devops - 存储库的所有构建定义
- python - pyomo 中的动态变量定义中的错误消息
- python - 您如何通过按回车键来引入由换行符\n 完成的输入?
- javascript - 会话存储的逻辑问题 - 刷新时记住类 - jQuery
- git - Visual Studio 2015 - Git Fetch 返回远程服务器返回错误:(401)未经授权
- python - 遍历Python中文件夹内的所有文件