[英]factor within factor summary statistical analysis in r
我有一个包含各种股票信息的数据框,该数据框用于创建有关公司名称的正面,负面或不确定的情绪。 该数据的标题为:
head(companyReturnsNameScore)
#----------
PERMNO date EXCHCD SICCD TICKER PRC VOL RET SHROUT companyNameSentiment companyName
1 85814 19980831 3 5960 CTAC 6.1875 27989 -0.489691 6431 Not Determined 1 800 CONTACTS INC
2 85814 20021231 3 5960 CTAC 27.5700 97498 1.177725 11388 Not Determined 1 800 CONTACTS INC
3 85814 19990129 3 5960 CTAC 14.7500 5658 -0.180556 6275 Not Determined 1 800 CONTACTS INC
4 85814 20021031 3 5960 CTAC 9.0300 20192 -0.097000 11382 Not Determined 1 800 CONTACTS INC
5 85814 20021129 3 5960 CTAC 12.6600 15474 0.401993 12082 Not Determined 1 800 CONTACTS INC
6 85814 20070731 3 5961 CTAC 23.2400 5574 -0.009378 13619 Not Determined 1 800 CONTACTS INC
marketCap marketCapDeclile
1 39791.81 2
2 313967.16 6
3 92556.25 4
4 102779.46 4
5 152958.12 5
6 316505.56 6
我正在尝试通过按市值的十分位排名(marketCapDecile)进行统计分析,但是在每个十分位排名中,我想进一步对每个情感因素进行按位分析。 这意味着对于每个十分位等级,我希望看到每个“正,负,未确定”因子水平的统计输出。 当我输入我认为是列出因素的正确命令时,
by( companyReturnsNameScore$RET, c(companyReturnsNameScore$marketCapDeclile,
companyReturnsNameScore$companyNameSentiment), summary)
不幸的是我得到以下错误:
Error in tapply(seq_len(1785812L), list(`c(companyReturnsNameScore$marketCapDeclile, companyReturnsNameScore$companyNameSentiment)` = c(2L,
: arguments must have same length
对于市值十分位数,我有10个因子水平,对于情感因子分类,我有3个因子水平,因此,基本上,我希望执行30个分析...问题是,我在因子分析中很难执行该因子。
我做错了什么? 如何在因子分析中执行因子?
您的第二个参数连接了两个向量,使它们的长度是第一个参数的两倍:
length( c( factor(1:5), factor(6:10) ) )
[1] 10
您(至少)有两个选择:使用list
(请注意?by
的help函数说要使用列表,或者使用interaction
函数返回最长输入长度的单个向量:
# 1
by( companyReturnsNameScore$RET,
list( companyReturnsNameScore$marketCapDeclile,
companyReturnsNameScore$companyNameSentiment),
summary)
# 2
by( companyReturnsNameScore$RET,
interaction( companyReturnsNameScore$marketCapDeclile,
companyReturnsNameScore$companyNameSentiment),
summary)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.