【问题标题】:Read dataframe values by certain creteria按特定标准读取数据帧值
【发布时间】:2021-06-16 19:40:59
【问题描述】:

我正在使用 panadas 读取一些数据,这是数据框:

PARAMETER VALUE
0 Param1 1.2
1 Param2 5.0
2 Param3 9.3
3 Param4 30
4 Param5 1500

通过参数名称访问值的最佳方式是什么?例如我需要 Param4 的值,有什么办法可以说 read['Param'].value?

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:
    1. 我认为没有条件阅读的方法。

    2. 但是,您可以使用以下代码来完成。

       df[df['PARAMETER'] == 'Param4']['VALUE']
      

    【讨论】:

      【解决方案2】:

      一种方法是使用loc,例如:

      float(df.loc[df['PARAMETER']=='Param4']['VALUE']) # locate col PARAMETER and get VALUE
      Out[81]: 30.0
      
      # Or
      df.loc[df['PARAMETER']=='Param4']['VALUE'].values
      Out[94]: array([30.])
      

      另一种方法是创建一个dict 并像这样访问它们:

      # Using a dictionary
      d = dict(zip(df.PARAMETER,df.VALUE))
      d['Param4']
      Out[82]: 30.0
      
      d['Param3']
      Out[90]: 9.3
      

      【讨论】:

      • 同时我这样做:为每列创建两个列表,然后将两个列表加入字典:col_one_list = fil2['PARAMETER'].tolist()col_two_list = fil2['VALUE'].tolist()res = {col_one_list[i]: col_two_list[i] for i in range(len(col_two_list))}print(res['Param4'])
      猜你喜欢
      • 2015-03-31
      • 2021-11-05
      • 2021-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-15
      • 1970-01-01
      相关资源
      最近更新 更多