【问题标题】:Python Pandas printing out values of each cellsPython Pandas 打印出每个单元格的值
【发布时间】:2015-11-19 21:43:05
【问题描述】:

我正在尝试使用 pandas 数据框从 excel 文件中获取值并打印出每个单元格的值。 我使用read_excel() 填充数据框,并且 我正在使用以下代码行查找特定行:

df.loc[df['Parcel_ID'] == parcel]

包裹是来自用户的任意输入。我只是用它来打印单元格:

row = df.loc[df['Parcel_ID'] == parcel]

print row['Category']
print row['Sub_Category']
.
.
(more values)

我想要的只是单元格中的值,但我得到了 dtypes、列名和其他我不想看到的垃圾。我如何只打印每个单元格的值?

【问题讨论】:

  • 您能否在您的问题中添加示例输入和所需的输出?如果知道我们想要得到什么,我认为我们可以更轻松地解决这个问题......

标签: python pandas


【解决方案1】:

如果您的行中有多个值,您可以使用以下值:

row['Category'].values.tolist()
row['Sub_Category'].values.tolist()

【讨论】:

    【解决方案2】:

    IIUC 以下应该可以工作:

    print row['Category'][0]
    print row['Sub_Category'][0]
    

    在您的情况下,返回的将是一个系列,一个带有单个元素的系列,您可以索引该元素以返回一个标量值

    【讨论】:

      【解决方案3】:

      如何通过另一列(列 2 名称)中的另一个值来查找列(列 1 名称)中的值

          df = pd.read_excel('file.xlsm','SheetName') #Get a excel file sheet
      

      那么你有两种方法可以得到它:

      第一种方式:

          Value_Target = df.loc[df['Column1name']== 'Value_Key']['Column2name'].values
      

      第二种方式:

          Value_Target = df['Column1name'][df['Column2name']=='Value_Key'].values[0]
      

      Value_Key 是您拥有的列中的值 Value_Target 是您要使用 Value_Key 找到的值

      【讨论】:

        猜你喜欢
        • 2013-07-16
        • 1970-01-01
        • 2017-01-26
        • 2021-08-02
        • 2019-12-21
        • 1970-01-01
        • 2018-05-12
        • 2023-03-20
        • 2022-06-15
        相关资源
        最近更新 更多