描述性统计,最有代表性的统计量。
> fivenum(x)
[1] 3 4 5 8 10
#依次为:最小值、下四分位数、中位数、上四分位数、最大值
验证:
> min(x)
[1] 3
> max(x)
[1] 10
> median(x)
[1] 5
> quantile(x)
0% 25% 50% 75% 100%
3 4 5 8 10
> which.min(x) #返回索引
[1] 3
> which.max(x)
[1] 1
我们做统计分析的时候,变量统计描述结果的整理是非常头疼的事,变量少的时候,整理的工作量还能承受,一旦变量比较多或者需要多次更新数据,就会非常耗时耗力。
之前我们也多次介绍相应的包,详情可查看专辑《R语言神包》。
你可能会问:已经介绍了这么多包,为什么还要介绍今天的包呢?
因为之前的包,进行多组的统计描述,组不能太多,否则,很容易出错。今天介绍的Table1包,再多的组,依然可快速实现分组统计,
#安装包
install.packages('table1')
install.packages('lubridate')
install.packages("ggplot2")
#调用包
library(table1)
library(lubridate)
library(ggplot2)
#查看案例数据集
??diamonds
输入:
head(diamonds)
输出:
输入:
str(diamonds)
输出:
输入:
table1(~ carat+price+depth+table+x+y+z +cut+color+clarity, data=diamonds, render.continuous=c(.="Mean±SD",.="Median [Min, Max]",.="Median [Q3-Q1]",.="Median[IQR]"))
输出:
输入:
table1(~ carat+price+depth+table+x+y+z +cut+clarity | color, data=diamonds, render.continuous=c(.="Mean±SD", .="Median [Min, Max]",.="Median [Q3-Q1]",.="Median [IQR]"))
输出:
看到我们想要的统计量都出来了,是不是很高兴,但是不知道怎么导出到excel里,还是没有完成万里长征的最后一步。具体导出方法如下图所示:
--既往专辑(点击直达)--
描述性统计,最有代表性的统计量。
> fivenum(x)
[1] 3 4 5 8 10#依次为:最小值、下四分位数、中位数、上四分位数、最大值
验证:
> min(x)
[1] 3
> max(x)
[1] 10
> median(x)
[1] 5
> quantile(x)
0% 25% 50% 75% 100%
3 4 5 8 10
> which.min(x) #返回索引
[1] 3
> which.max(x)
[1] 1转载于:https://www.cnblogs.com/sydnia/p/7341730.html
算法数组中的最大值和最小值
方法1:遍历两次求出最大值最小值 ,时间复杂度N*2
方法2:相邻两个数分为一组比较,大的放在偶数位,小的放到奇数位,然后在偶数位上找到最大值,在奇数位上找到最小值N*1.5
方法3:定义两个变量Max,Min值,相邻两个数分为一组,比较出最大值和最小值,最大值和Max比较,是否大于Max,如果大于赋值于Max,最小值和Min比较,是否小于Min,如果小于赋值于Min
方法4:递归方法,分别求出前后N/2个数的Min和Max
程序:
(Max,Min)Search(arr, b, e)
{
If(e-b<=1)
{
If(arr[b]
{
Return arr[e], arr[b];
}
Else
{
Return arr[b], arr[e];
}
}
MaxL,MinL=Search(arr,b,b+(e-b)/2);
MaxR,MinR=Search(arr,b+(e-b)/2,e);
If(MaxL>MaxR)
maxV=maxL;
else
maxV=maxR;
if(minL
minV=minL;
else
minV=minR;
return maxV,minV;
}
扩展:
求N个数组中,第二大的数:分别求出前后N/2中的最大值,比较返回较小的那个来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29012686/viewspace-1142923/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29012686/viewspace-1142923/
C语言学习记录
前言
一直自己没有学习做笔记的习惯,所以为了加强自己对知识的深入理解,决定将学习笔记写下来,希望向各位大牛们学习交流!
不当之处请斧正!在此感谢!这边就先从学习C语言写起,自己本身对程序语言方面不擅长,所以决定对此从基础开始学习,
大牛们对此文可以忽略!
学校OJ上的实验题
最大值和最小值
题目描述
编写一个程序,从输入的4个整数中找出最大值和最小值。要求只能使用4条if语句。
输入描述
在一行中输入4个整数,以空格分隔。
输出描述
在一行中按照格式“Largest = xxx, Smallest = xxx”输出所求的值。
输入样例
21 43 10 35
输出样例
Largest = 43, Smallest = 10解题:
先求前面两个与后面两个的最大最小值,再把这两个最大最小值比较。#include<stdio.h> int main() { int x,y,m,n,i,k,max,min,a,b; scanf("%d %d %d %d",&x,&y,&m,&n); if(x>y) { i=x; k=y; } else{ i=y; k=x; } if(m>n) { a=m; b=n; }else { a=n; b=m; } if(i>a) { max=i; }else { max=a; } if(k<b) { min=k; }else { min=b; } printf("Largest = %d, Smallest = %d\n",max,min); return 0; }