精华内容
下载资源
问答
  • pandas根据日期求某一列的平均值

    千次阅读 2020-03-11 18:58:16
    对于这种,读进来日期不是日期格式,并且有时候天有很多条数据,天没有数据的情况,根据年份合并star_rating这的平均值。 读入数据并删除无关 pcfr = pd.read_excel('microwave.xlsx') df = pcfr[['...

    对于这种,读进来日期不是日期格式,并且有时候一天有很多条数据,一天没有数据的情况,根据年份合并求star_rating这一栏的平均值。
    在这里插入图片描述

    读入数据并删除无关列

    pcfr = pd.read_excel('microwave.xlsx')
    df = pcfr[['review_date','star_rating']]
    df.head(3)
    

    会警告,无视之。

    df['review_date'] = pd.to_datetime(df['review_date'])
    

    日期格式的转化

    # df.set_index('review_date')
    # df.reset_index()
    t = df.set_index('review_date')
    t.head(3)
    

    这一步结束后可以看到日期已经转换成功。
    在这里插入图片描述
    利用groupby分组求年平均值

    m = t.groupby(pd.Grouper(freq='Y')).mean()
    print(m)
    

    在这里插入图片描述

    展开全文
  • 我有个从csv导入数据帧,它(经过大量简化)如下所示:date = ['2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10']event = ...

    我对熊猫不太熟悉,有点不知所措。我有一个从csv导入的数据帧,它(经过大量简化)如下所示:date = ['2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10',

    '2013-08-10','2013-08-10','2013-08-10','2013-08-10','2013-08-10']

    event = ['213','213','213','213','214','214','214','215','215','215']

    side = ['A','B','B','B','A','B','A','B','A','B',]

    value = [0.193,0.193,0.092,0.027,0.027,0.058,0.027,0.079,0.193,0.159]

    df = pd.DataFrame(zip(event,date,side,value),

    columns=['event','date','side','value'])

    event date side value

    0 213 2013-08-10 A 0.193

    1 213 2013-08-10 B 0.193

    2 213 2013-08-10 B 0.092

    3 213 2013-08-10 B 0.027

    4 214 2013-08-10 A 0.027

    5 214 2013-08-10 B 0.058

    6 214 2013-08-10 A 0.027

    7 215 2013-08-10 B 0.079

    8 215 2013-08-10 A 0.193

    9 215 2013-08-10 B 0.159

    我想要的是对每个事件的每一个边对应的值求和。我用groupby实现了这一点:

    ^{pr2}$

    但我还想添加一个新的列,每边的平均值都在扩大,如下所示:value

    event side roll_mean

    213 A 0.193 0

    B 0.312 0

    214 A 0.054 0.193

    B 0.058 0.312

    215 A 0.193 0.124

    B 0.238 0.185

    请注意,每个事件都有两面性,但并不总是A和B。我想要的是类似excel的东西平均值。如果函数,该函数计算当前边的所有值的扩展平均值,并应用于前面的所有行。如有任何帮助,我们将不胜感激。在

    展开全文
  • 我有下个DataFrame:data=pd.read_csv('anual.csv', parse_dates='Fecha', index_col=0)dataDatetimeIndex: 290 entries, 2011-01-01 00:00:00 to 2011-12-31 00:00:00Data columns (total 12 columns):HR 2...

    我有下一个DataFrame:

    data=pd.read_csv('anual.csv', parse_dates='Fecha', index_col=0)

    data

    DatetimeIndex: 290 entries, 2011-01-01 00:00:00 to 2011-12-31 00:00:00

    Data columns (total 12 columns):

    HR 290 non-null values

    PreciAcu 290 non-null values

    RadSolar 290 non-null values

    T 290 non-null values

    Presion 290 non-null values

    Tmax 290 non-null values

    HRmax 290 non-null values

    Presionmax 290 non-null values

    RadSolarmax 290 non-null values

    Tmin 290 non-null values

    HRmin 290 non-null values

    Presionmin 290 non-null values

    dtypes: float64(4), int64(8)

    哪里:

    data['HR']

    Fecha

    2011-01-01 37

    2011-02-01 70

    2011-03-01 62

    2011-04-01 69

    2011-05-01 72

    2011-06-01 71

    2011-07-01 71

    2011-08-01 70

    2011-09-01 40

    ...

    2011-12-17 92

    2011-12-18 78

    2011-12-19 79

    2011-12-20 76

    2011-12-21 78

    2011-12-22 80

    2011-12-23 72

    2011-12-24 70

    此外,有些月份并不总是完整的.我的目标是从每日数据计算每个月的平均值.这是通过以下方式实现的:

    monthly=data.resample('M', how='mean')

    HR PreciAcu RadSolar T Presion Tmax

    Fecha

    2011-01-31 68.586207 3.744828 163.379310 17.496552 0 25.875862

    2011-02-28 68.666667 1.966667 208.000000 18.854167 0 28.879167

    2011-03-31 69.136364 3.495455 218.090909 20.986364 0 30.359091

    2011-04-30 68.956522 1.913043 221.130435 22.165217 0 31.708696

    2011-05-31 72.700000 0.550000 201.100000 18.900000 0 27.460000

    2011-06-30 70.821429 6.050000 214.000000 23.032143 0 30.621429

    2011-07-31 78.034483 5.810345 188.206897 21.503448 0 27.951724

    2011-08-31 71.750000 1.028571 214.750000 22.439286 0 30.657143

    2011-09-30 72.481481 0.185185 196.962963 21.714815 0 29.596296

    2011-10-31 68.083333 1.770833 224.958333 18.683333 0 27.075000

    2011-11-30 71.750000 0.812500 169.625000 18.925000 0 26.237500

    2011-12-31 71.833333 0.160000 159.533333 17.260000 0 25.403333

    我发现的第一个错误是在降水列中,因为所有观测结果在1月份都是0,而在这个特定月份获得的平均值为3.74.

    当Excel中的平均值与上面的结果进行比较时,存在显着差异.例如,Febrero的HR平均值是

    mean HR using pandas=68.66

    mean HR using excel=67

    我找到的另一个细节:

    data['PreciAcu']['2011-01'].count()

    29 and should be 31

    难道我做错了什么?

    我该如何解决这个错误?

    附件csv文件:

    展开全文
  • 情景:计算两次考试,所有学生的平均成绩: '''a.csv date,name,grade 2020-07-01,mary,70 2020-07-01,tom,80 2020-07-01,jerry,70 2020-07-02,mary,80 2020-07-02,tom,90 2020-07-02,tom,100''' grade = pd....

    情景:计算两次考试,所有学生的平均成绩:

     

    '''a.csv
    date,name,grade
    2020-07-01,mary,70
    2020-07-01,tom,80
    2020-07-01,jerry,70
    2020-07-02,mary,80
    2020-07-02,tom,90
    2020-07-02,tom,100'''
    
    grade = pd.read_csv('C:\\test\\a.csv')
    
    # average grade at 0701 and 0702
    avg = grade['grade'].groupby(grade['date']).mean()
    
    # format grade avg to 'avg: XX'
    import math
    avg_new = avg.apply(lambda x: 'avg: '+str(math.floor(x))) 
    
    # last step, change avg_new to key-value
    avg_new.to_dict()

    结果:

     

    展开全文
  • Python实现按某一列关键字分组,并计算各列的平均值,并用该值填充该分类该列的nan值。 DataFrame数据格式 fillna方式实现 groupby方式实现 DataFrame数据格式 以下是数据存储形式: fillna方式实现 1、按照...
  • Python实现按某一列关键字分组,并计算各列的平均值,并用该值填充该分类该列的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1列...
  • Python实现按某一列关键字分组,并计算各列的平均值,并用该值填充该分类该列的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1列...
  • Python实现按某一列关键字分组,并计算各列的平均值,并用该值填充该分类该列的nan值。DataFrame数据格式fillna方式实现groupby方式实现DataFrame数据格式以下是数据存储形式:fillna方式实现1、按照industryName1列...
  • Python实现按某一列关键字分组,并计算各列的平均值,并用该值填充该分类该列的nan值。 DataFrame数据格式 fillna方式实现 groupby方式实现 DataFrame数据格式以下是数据存储形式: fillna方式实现 按照...
  • GroupBy使用聚合意思指是对数据框架中某一类型数据进行整合,在整合后可以对其进行求和、求平均值等操作,下面举例说明:对上面创建数据框架按公司进行分类,各公司人均销售额:再来统计一下各公司...
  • GroupBy使用聚合意思指是对数据框架中某一类型数据进行整合,在整合后可以对其进行求和、求平均值等操作,下面举例说明:对上面创建数据框架按公司进行分类,各公司人均销售额:再来统计一下各公司...
  • 以某一列分组后某一列的平均值 means = detail.groupby(by=索引名称)[行名称].mean() agg方法 同时进行多个统计分析 detail[["counts","amounts"]].agg([np.sum,np.mean,np.min]) 对于不同的数据不同的统计...
  • 对数据集进行分类,并在每组数据...在进行groupby分组后,我们可以对分组对象进行各种操作,比如分组平均值mean() 很多时候,我们需要返回dataframe型数据进行二次操作 size()方法可以获取各分组大小 遍历分组

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

pandas求某一列的平均值