计算上的数据帧
问题描述:
在R标准偏差我有一个数据帧在R.计算上的数据帧
index seq change change1 change2 change3 change4 change5 change6
1 1 0.12 0.34 1.2 1.7 4.5 2.5 3.4
2 2 1.12 2.54 1.1 0.56 0.87 2.6 3.2
3 3 1.86 3.23 1.6 0.23 3.4 0.75 11.2
... ... ... ... ... ... ... ... ...
数据帧的名称只是FUllData
。我可以使用代码访问FullData
的每一列:
FullData[2] for 'change'
FullData[3] for 'change1'
FullData[4] for 'change3'
...
...
现在,我希望计算在第一四列的第一行值的标准偏差等所有列
standarddeviation = sd (0.12 0.34 1.2 1.7)
then
standarddeviation = sd (0.34 1.2 1.7 4.5)
以上必须适用于所有行。所以基本上我想明智地计算sd行,并且数据存储在列的明智之处是可以做到这一点。 如何通过在索引或seq变量上使用for循环访问数据框的行? 我如何在R中做到这一点?有没有更好的办法?
答
我想你正在寻找这样的东西。
st.dev=numeric()
for(i in 1:dim(FUllData)[1])
{
for(j in 1:dim(FUllData)[2])
{
st.dev=cbind(st.dev,sd(FUllData[i:dim(FUllData)[1],j:dim(FUllData)[2]]))
}
}
+0
dim(FullData)为空 – Hiesenberg
您可以使用'apply'访问行。看看'apply(data [....],1,sd)' – PereG
您是否考虑将数据帧从这种宽格式转换为长格式?然后,您可以执行滚动标准偏差。 – Parfait