python - ndarray 的 pandas 数据框查询
问题描述
我有一个包含 4 列的颜色数据框和一个 [3,] 数组
index = ["color","R", "G", "B"] # index as csv file definition
colors_csv = read_csv(csv_path , names=index, header=None)
colors = [[159 147 134][252 252 252][ 75 81 75][229 195 184]] # sample RGB data
我想从 colors_csv 获取一个新的子数据框,其中所有出现colors
在 R、G、B 列中
到目前为止,使用.loc
属性将返回一个正确的列表,但由我无法遍历并获取新数据帧的连接项组成
# query with array of colors
for i in range(len(colors)):
aaaa = ([colors_csv.loc[(colors_csv['R'] == colors[i][0]) &
(colors_csv['G'] == colors[i][1]) & (colors_csv['B'] == colors[i][2])]])
print(aaaa) # how to have all these aaaa thorough loop as one dataframe
我想可能有一行魔术代码可以完成这项工作:)
任何帮助表示赞赏
解决方案
使用从 RGB 数据创建merge
的所有列的默认合并:DataFrame
colors_csv = read_csv(csv_path , names=index, header=None)
out = colors_csv.merge(pd.DataFrame(colors, columns=["R", "G", "B"]))
推荐阅读
- nats.io - 是否建议从本机前端客户端直接连接到 NATS 服务器?
- typescript - 一个关于使用 RxJs 和 typescript 进行类型推断的有趣故事
- c# - 跟踪图像目标时如何编写脚本以在 Unity 中打开 PDF 文件?
- r - R:向条形图添加垂直线
- python - 无法在 pandas python 中读取没有逗号分隔符的 txt 文件
- azure - 如何通过专用终结点从 Azure VM 连接到 Azure MySQL 服务器
- sql - 永久排序 SQL 表而不是结果
- python - 在 jupyter notebooks 上没有通过 github 显示的绘图
- reactjs - React 中的 Todo 应用程序 - 想要添加按钮,单击该按钮会删除整个待办事项列表
- oracle - 无子查询的Oracle查询优化