统计学区内各个小区的房价均值

数据格式

id|community_name|house_area|house_structure|house_total|house_avg|agency_name|house_floor_curr|house_floor_total|house_floor_type

6328500962692431872|尚东花园|77.0|3室2厅|285.0|37013.0|利众置业|5|5|多层

6328500979813580800|赛世香樟园|93.0|2室2厅|265.0|28495.0|苏商房产仙林店|9|11|小高层

导入数据

house<- read.table("house_data.txt", header = TRUE, sep='|',fileEncoding ="UTF-8",

stringsAsFactors = FALSE,

colClasses = c("character","character","numeric",

"character","numeric","numeric","character",

"numeric","numeric","character"))

houseXQ<- sqldf("select * from house where  community_name!='东郊小镇' ",row.names=TRUE)

选择列

selectedColumns<- c("community_name","house_avg")

将小区名转换成因子

communityFactor<- factor(houseXQ$community_name, order=FALSE)

将因子列整合到数据框中

houseXQ <-cbind(houseXQ, communityFactor)

重新选择列

selectedColumns<- c("communityFactor","house_avg")

看一下数据

head(houseXQ[selectedColumns])

按小区名分组计算均值

aggregate(houseXQ[selectedColumns], by=list(communityFactor=houseXQ$communityFactor),mean)

结果:

 

自定义函数计算统计量

funcMystats<- function(x, na.omit= FALSE){

if(na.omit){

x<- x[!is.na(x)]

}

m<- mean(x)

n<- length(x)

s<- sd(x)

skew<- sum((x-m)^3/s^3)/n

kurt<- sum((x-m)^4/s^4)/n-3

return (c(n=n,mean=m, stdev=s, skew=skew, kurtosis=kurt))

}

funcDstats <- function(x) sapply(x, funcMystats)#对于每个X调用 funcMystats 函数
by(houseXQ[selectedColumns], houseXQ$community_name, funcDstats)
#对于数据框 houseXQ,选择 selectedColumns 的列,根据 houseXQ$community_name 进行分组,对每组调用 funcDstats函数计算统计量

结果(部分)

houseXQ$community_name: 东方天郡
         communityFactor     house_avg
n                     51    51.0000000
mean                  NA 38255.8039216
stdev                  0  2145.6443696
skew                  NA    -0.4395676
kurtosis              NA     0.6015383
------------------------------------------------------------ 
houseXQ$community_name: 康桥圣菲
         communityFactor     house_avg
n                      9     9.0000000
mean                  NA 34359.0000000
stdev                  0  1567.1059313
skew                  NA    -0.9804274
kurtosis              NA    -0.8342473
------------------------------------------------------------ 
houseXQ$community_name: 南师大茶苑
         communityFactor house_avg
n                      1         1
mean                  NA     31691
stdev                 NA        NA
skew                  NA        NA
kurtosis              NA        NA
------------------------------------------------------------ 
houseXQ$community_name: 赛世香樟园
         communityFactor     house_avg
n                      3     3.0000000
mean                  NA 28938.3333333
stdev                  0  1654.1733081
skew                  NA     0.2487582
kurtosis              NA    -2.3333333
------------------------------------------------------------ 
houseXQ$community_name: 三味公寓
         communityFactor  house_avg
n                      2     2.0000
mean                  NA 28662.0000
stdev                  0   576.9991
skew                  NA     0.0000
kurtosis              NA    -2.7500
------------------------------------------------------------ 
houseXQ$community_name: 尚东花园
         communityFactor house_avg
n                      1         1
mean                  NA     37013
stdev                 NA        NA
skew                  NA        NA
kurtosis              NA        NA
------------------------------------------------------------ 

使用 psych 包中的 describeBy()分组计算概述统计量

library(psych)
selectedColumns<- c("communityFactor","house_avg")
describeBy(houseXQ[selectedColumns], list(houseXQ$communityFactor))

结果如下(部分)

 

R 分组计算描述性统计量的更多相关文章

  1. R语言笔记006——分组获取描述性统计量

    方法一:使用aggregate()分组获取描述性统计量 aggregate(mtcars[vars],by=list(am=mtcars$am),mean) aggregate(mtcars[vars ...

  2. R语言笔记005——计算描述性统计量

    数据的分布特征: 分布的集中趋势,反应各数据向其中心值靠拢或聚集的程度(平均数,中位数,四分位数,众数) 分布的离散程度,反应各数据远离其中心值的趋势(极差,四分位差,方差,标准差,离散系数) 分布的 ...

  3. spark 例子groupByKey分组计算

    spark 例子groupByKey分组计算 例子描述: [分组.计算] 主要为两部分,将同类的数据分组归纳到一起,并将分组后的数据进行简单数学计算. 难点在于怎么去理解groupBy和groupBy ...

  4. R语言计算IV值

    更多大数据分析.建模等内容请关注公众号<bigdatamodeling> 在对变量分箱后,需要计算变量的重要性,IV是评估变量区分度或重要性的统计量之一,R语言计算IV值的代码如下: Ca ...

  5. devexpress表格gridcontrol实现分组,并根据分组计算总计及平均值

    1.devexpress表格控件gridcontrol提供了强大的分组功能,你几乎不用写什么代码就可以实现一个分组功能,并且可根据分组计算总计和平均值.这里我例举了一个实现根据班级分组计算班级总人数, ...

  6. R语言计算moran‘I

    R语言计算moran‘I install.packages("maptools")#画地图的包 install.packages("spdep")#空间统计,m ...

  7. spark 例子groupByKey分组计算2

    spark 例子groupByKey分组计算2 例子描述: 大概意思为,统计用户使用app的次数排名 原始数据: 000041b232,张三,FC:1A:11:5C:58:34,F8:E7:1E:1E ...

  8. R语言计算相关矩阵然后将计算结果输出到CSV文件

    R语言计算出一个N个属性的相关矩阵(),然后再将相关矩阵输出到CSV文件. 读入的数据文件格式如下图所示: R程序采用如下语句: data<-read.csv("I:\\SB\land ...

  9. python库学习笔记——分组计算利器:pandas中的groupby技术

    最近处理数据需要分组计算,又用到了groupby函数,温故而知新. 分组运算的第一阶段,pandas 对象(无论是 Series.DataFrame 还是其他的)中的数据会根据你所提供的一个或多个键被 ...

随机推荐

  1. Codeforces Round #374 (Div. 2) B. Passwords 贪心

    B. Passwords 题目连接: http://codeforces.com/contest/721/problem/B Description Vanya is managed to enter ...

  2. Codeforces Round #368 (Div. 2) B. Bakery 水题

    B. Bakery 题目连接: http://www.codeforces.com/contest/707/problem/B Description Masha wants to open her ...

  3. STM32F103ZET6 用定时器级联方式输出特定数目的PWM

    STM32F103ZET6 用定时器级联方式输出特定数目的PWM STM32F103ZET6里共有8个定时器,其中高级定时器有TIM1-TIM5.TIM8,共6个. 这里需要使用定时器的级联功能,ST ...

  4. Overclock STM32F4 device up to 250MHz

    http://stm32f4-discovery.com/2014/11/overclock-stm32f4-device-up-to-250mhz/ Let’s test what STM32F4x ...

  5. 【Go入门教程2】基本构成元素:标识符(identifier)、关键字(keyword 25个)、字面量(literal)、分隔符(delimiter)、和 操作符(operator)

    基本构成要素 Go 的语言符号 又称 词法元素,共包括 5 类内容——标识符(identifier).关键字(keyword).字面量(literal).分隔符(delimiter) 和 操作符(op ...

  6. 解决SVN CONNOT VERIFY LOCK ON PATH NO MATCHING LOCK-TOKEN AVAILABLE

    最近使用SVN,开发项目的时候,璞玉遇到一个问题.就是: connot verify lock on path  no matching lock-token available   connot v ...

  7. Drectx 3D窗口后台截图

    //GDI与DX截屏API操作 LPDIRECTDRAW lpDD = NULL; LPDIRECTDRAWSURFACE lpDDSPrime = NULL; LPDIRECTDRAWSURFACE ...

  8. 用delphi实现完美屏幕截图

    可以截取layered窗口(包括透明窗口)的代码: procedure CaptureScreen(AFileName: string);const  CAPTUREBLT = $40000000;v ...

  9. win10系统更新不了,总出现错误0xc8000442

    来自 win10系统更新不了,总出现错误0xc8000442,SHIZHI333的回答. 首先卸载制有第三方防护软件管管家类软件,再试试下面的方法:清理一下更新临时文件,具体操作如下: 1.右键点击开 ...

  10. Xcode 5.1.1 与 Xcode 6.0.1 的共存之路(建议大家在升级Xcode 6.0.1 的时候保留Xcode 5.1.1)

    最近升级了Xcode 6.0.1 与原有项目有不少冲突.建议大家谨慎升级,同时做好备份.二者共存推荐如下帖子. http://jingyan.baidu.com/article/1612d500457 ...