如何解决如何在Python中返回列和行的交集?
这是菜鸟!
我想知道从Python表中返回行和列(两个输入)的交点的正确方法是什么。基本上等同于您可以在Excel中使用MATCH和INDEX进行的操作。 This is part of the table in Excel。以图片为例,输入将是“序列”值,“大小”值和列标题中的代码之一,并且应返回正确的“ EZ -...”匹配代码。
我具有Python和SQL的基本知识,因此,如果答案是使用这两种语言中的任何一种或两种,则更好。
我认为这样做的一种方法是在SQL中进行查询,但是一列必须是一个变量(列标题中的代码),试图找到如何做到这一点的方法,但是还没有运气。
提前感谢您的支持!
解决方法
pandas
库(docs)提供了一套出色的工具来解决诸如您的问题:
import pandas as pd
# Read data
df = pd.read_excel('path/to/excel/file.xlsx')
# Alternatively: Mock data for reproducibility
df = pd.DataFrame({
'series': ['FP','FP','FP'],'size': ['1/4"','3/8"','1/2"','3/4"','1"'],'70003': ['EZ-001D-3C','EZ-002D-3C','EZ-003D-3C','EZ-004D-3C','EZ-005D-C'],'70005': ['EZ-006D-3C','EZ-007D-3C','EZ-008D-3C','EZ-009D-3C','EZ-010D-3C'],'70006': ['EZ-011D-3C','EZ-012D-3C','EZ-013D-3C','EZ-014D-3C','EZ-015D-3C']
})
# Example values
series_value = 'FP'
size = '1/4"'
column_code = '70003'
# Subset dataframe and select series (column) corresponding to column_code
result_series = df[(df['series'] == series_value) & (df['size'] == size)][column_code]
# Retrieve cell value
result_value = result_series.to_list()[0]
print(result_value)
# Result will be 'EZ-001D-3C'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。