Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 时间序列测量的图形表示法_R - Fatal编程技术网

R 时间序列测量的图形表示法

R 时间序列测量的图形表示法,r,R,我不熟悉这种语言,我有一个名为“Dummy”的数据框,我正试图按“年”、“家庭”和“HZ.CV”对它进行排序 该数据称为虚拟,包括: (1) Family is the alpha-numeric code for a particular family of birds; (2) HZ.mean is a mean pulse repetition rate (Hz); (3) HZ.sd is the standard deviation of the pulse repetition

我不熟悉这种语言,我有一个名为“Dummy”的数据框,我正试图按“年”、“家庭”和“HZ.CV”对它进行排序

该数据称为
虚拟
,包括:

(1) Family is the alpha-numeric code for a particular family of birds; 
(2) HZ.mean  is a mean pulse repetition rate (Hz); 
(3) HZ.sd is the standard deviation of the pulse repetition rate (Hz);  
(4) HZ.CV is the coefficient of variation (C.V. = (CV.sd/CV.mean)*100)
HZ.CV。是频率分布色散的度量。频率分布与频率(Hz)测量和不同鸟类科的光谱图变化有关

*HZ代表脉冲重复频率

#Code to produce the dataframe called `Dummy`

Dummy$Year<-as.numeric(as.character(Dummy$Year))
Dummy$Family<-as.factor(Dummy$Family)
Dummy$HZ<-as.numeric(Dummy$HZ)

library(plyr)

summary.stats<-ddply(Dummy,.(Year,Family),summarise, 
HZ.mean=mean(HZ), HZ.sd = sd(HZ), HZ.CV = sd(HZ)/(mean(HZ))*(100))
summary.stats

  #I have two separate dataframes:
  (1) Showing families X75 and X87
  (2) Showing families X2 and X22, which diverged from the family X75 in 2006

 #Example of the dataframe format

 Year     Family      HZ.mean    HZ.sd        HZ.CV
1  2001    X75        15.00000   14.525839    96.83893
2  2001    X87        60.00000   31.320920    52.20153
3  2002    X75        68.00000   17.349352    25.51375
4  2002    X87        67.33333   14.843629    22.04499
5  2003    X75        50.00000   37.802116    75.60423
6  2003    X87        28.00000   35.791060    127.82522
7  2004    X75        40.66667   26.350206    64.79559
8  2004    X87        31.33333   24.172988    77.14783
9  2005    X75        31.33333   17.785762    56.76307
10 2005    X87        38.66667   28.884829    74.70214
#生成名为'Dummy'的数据帧的代码`

Dummy$Year您可以通过多种方式对数据进行排序。下面是一个使用包
dplyr

library(dplyr)
merged.Dummy %>% arrange(Year, Family)
   Year Family     SBI.CV
# 1  1964    X75 105.249338
# 2  1964    X87   7.014259
# 3  1965    X75  78.507843
# 4  1965    X87  70.808548
# 5  1966    X75  25.101428
# 6  1966    X87  29.447163
# 7  1967    X75  67.395050
# ...
但是,在进行分析之前,不需要对数据进行排序

例如,如果你想看看不同年龄组的变异系数

library(ggplot2)
ggplot(merged.Dummy, aes(Year, SBI.CV, color=Family)) + geom_path() +
  ggtitle("Coef. of Variation")

这是一个特定于领域的问题。如果您可以重新编写它,将更多精力放在您遇到的特定编程问题上,那么您可能会得到更快的答案。你能提供一个你试图创建的输出的具体例子吗(例如,从以前发表的研究中)?谢谢你的输入错误。C.V.是概率分布或频率分布离散度的度量。因此,在这种情况下,变化与SBI中频率的变化有关,在相同呼叫类型的呼叫之间以(Hz)为单位进行测量。将测量的其他参数是每个呼叫音节的持续时间(ms),以及基频的最小和最大频率。其思想是对相似的参数进行集群调用。嗨,欢迎来到Stack Overflow!我想强调@Ben所说的话,并鼓励大家将其简化为一个较小的例子。本指南可能会有所帮助:订购可以通过以下方式完成:
merged.Dummy[order(merged.Dummy$Year,merged.Dummy$Family)]
。但在R中,通常不需要排序。听起来您想使用“拆分-应用-合并”分析策略,最好使用
aggregate
ave
by
等方法。感谢您的帮助。这是我在
[.data.frame
(merged.Dummy,order(merged.Dummy$Year,merged.Dummy$Family))中不断收到的错误消息:未定义列已选中>
library(ggplot2)
ggplot(merged.Dummy, aes(Year, SBI.CV, color=Family)) + geom_path() +
  ggtitle("Coef. of Variation")