R:从xts对象导出特定值类

时间:2018-10-03 14:56:59

标签: r csv export xts zoo

我有几个xts输出对象,它们可以包含不同的“值”类。 所有xts对象都包含具有相同长度的值类import requests import kerberos import requests_kerberos host = '10.200.30.212:8998' auth = requests_kerberos.HTTPKerberosAuth(mutual_authentication=requests_kerberos.REQUIRED, force_preemptive=True) headers = {'Content-Type': 'application/json'} datetime。 一些xts对象包含另一个值类spot

例如具有par值的xts对象:(值是:“ datetime”,“ spot”和“ par”)

par

我想导出$datetime $spot 2017-10-02 09:05:00 4.503936e-04 2017-10-02 09:10:00 4.799895e-04 2017-10-02 09:15:00 5.181447e-04 2017-10-02 09:20:00 5.734970e-04 2017-10-02 09:25:00 5.637900e-04 2017-10-02 09:30:00 4.684099e-04 2017-10-02 09:35:00 5.149570e-04 2017-10-02 09:40:00 5.459784e-04 $par sigma sigma_mu sigma_h sigma_k phi rho mu1 mu2 delta_c1 0.0001963601 0.1727417926 0.0070247195 1.2313740300 0.1940041110 0.2426273212 0.6050628200 0.1732629813 0.3489579734 delta_c2 delta_c3 delta_c4 delta_c5 delta_s1 delta_s2 delta_s3 delta_s4 delta_s5 -1.5338494995 1.0146674063 0.8648589185 0.2488922309 -1.3362789351 1.1684672029 2.0240062847 0.2421184159 -0.4020884885 datetime的值。
我使用以下方法将xts对象另存为csv。

spot

其中vol {i}是xts对象。 对于不包含值类for (n in c("vol1", "vol2", "vol3", "vol4", "vol5", "vol6", "vol7", "vol8")) { v = get(n) myFile <- paste0("Vola_Est", "_", n, ".csv") write.zoo(as.xts(do.call(rbind, unname(v))), file=myFile, sep=",") } 的那些对象,此方法很好用。我猜这是因为在xts对象中呈现数据的方式存在“结构性中断”。

在下面找到产生输入数据的示例代码

par

1 个答案:

答案 0 :(得分:1)

找到了解决方案。无法识别xts对象中的值类可以像数据框中的列那样调用。

使用以下循环将特定内容从xts导出到csv。

for (n in c("vol1", "vol2", "vol3", "vol4", "vol5", "vol6", "vol7", "vol8")) {
  v = get(n)
  extr <- v[j = 'spot']
  vola <- as.data.frame(extr)
  myfile <- paste("Vola_Est_1Min_",n,".csv", sep="")
  write.csv(vola, myfile)
}
相关问题