如何将索引1的特定列的值分配给新变量

时间:2019-07-02 15:16:34

标签: python pandas csv dataframe row

我有一个包含以下列的CSV:STATION, DATE, TEMP

我需要在 DATE 列的索引0处分配一个值给新变量(我们将其称为first_observation)。因此,我需要指定DATE列的索引。该数据框称为“ 数据” ,列名为“ “日期” ”。

我尝试过这样的事情:

    data = pd.read_csv(fp, sep='\s+', skiprows=[1], na_values=['-9999'])
    first_observation = data.loc[idx[0], 'DATE']

但是它不起作用。

该问题与答案pandas - how to access cell in pandas, equivalent of df[3,4] in R不同,因为它讨论了一些不同的术语。我的列名是字符串,行名是整数。在另一个问题中,这对应于答案:

 first_obs = data.at['Column_name', 'Row_name'] 

在这种情况下,答案是:

first_obs = data['Column_name'][0] - the [0] being the index of the row

如果我错了,请纠正我。

1 个答案:

答案 0 :(得分:0)

DataFrame.loc方法将行作为第一个参数,将列作为第二个参数。

行也由DataFrame的索引表示,索引以0开头。

因此,第一行或索引[0]由[0:1]表示为第一个参数。对于所选列,第二个参数是“ DATE”。

需要时,获取'DATE'列的第一行元素

first_observation = data.loc[0:1, 'DATE'] 可以使用。

请注意,您必须首先传递行,然后传递第二列作为.loc.at方法的参数。