【问题标题】:Get data from one column based on another using Python使用 Python 从一列基于另一列获取数据
【发布时间】:2015-04-15 07:02:25
【问题描述】:

当我提供的数据与 column2 和 column4 中的数据匹配时,我正在尝试从 .xlsx 文件的 column1 获取数据。我尝试使用data[data['column2'] == "aa1"],但对结果不满意。对于第 4 列数据,我使用了int(raw_input("get data: ")),但这也不起作用。

示例 excel 文件:

column1,column2,column3,column4
aa,aa1,lll,21
bb,aa2,ll,22

需要的输出:

aa #when an input of aa1 and 21 is given.

PS- 数据采用 pandas 数据框的形式。

【问题讨论】:

  • 您是如何将.xslx 文件加载到您的python 代码中的?
  • “但对结果不满意”?
  • @dbliss 我做了excel = pd.ExcelFile(file_name) df = excel.parse("Sheet1")
  • @AndyHayden 当我只需要来自 column1 的数据时,它会打印完整的行。我尝试使用 [0] 后缀,这给了我一个 keyerror。
  • 好的,所以你问的是如何在pandas DataFrame 中获取数据。请编辑您的问题以包含此内容。

标签: python pandas xlsx import-from-excel


【解决方案1】:

你想要这个:

data[(data['column2'] == "aa1") & (data['column4'] == 21)]

所以要使用多个条件,您需要使用& 而不是and,因为我们正在比较数组,由于运算符优先级,您还需要使用括号

【讨论】:

    猜你喜欢
    • 2021-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多