r - 用 R 插值地球化学数据中的缺失值 (NA)
问题描述
我目前正试图在我的地球化学数据中用 R 插入缺失值 (NA)。
到目前为止,我结合了 X 射线荧光分析的数据和来自同一钻芯的磁化率数据,所以我目前的数据如下所示:
Bohrung.x Bohrmeter Tiefe Vol..Susc..Meas..in.10..5.SI Vol..Susc..Meas..in.SI
1 TRE 15A <NA> 0.34 2.0530 2.0530e-05
2 TRE 15A <NA> 0.35 1.8835 1.8835e-05
3 TRE 15A <NA> 0.36 2.6866 2.6866e-05
4 TRE 15A <NA> 0.37 2.3182 2.3182e-05
5 TRE 15A 0 - 0,93 m 0.38 1.8425 1.8425e-05
6 TRE 15A <NA> 0.39 2.2694 2.2694e-05
7 TRE 15A 0 - 0,93 m 0.40 2.0429 2.0429e-05
8 TRE 15A <NA> 0.41 1.6823 1.6823e-05
9 TRE 15A 0 - 0,93 m 0.42 1.2559 1.2559e-05
10 TRE 15A <NA> 0.43 0.6900 6.9000e-06
11 TRE 15A 0 - 0,93 m 0.44 2.1336 2.1336e-05
12 TRE 15A <NA> 0.45 1.5240 1.5240e-05
13 TRE 15A 0 - 0,93 m 0.46 2.0326 2.0326e-05
14 TRE 15A <NA> 0.47 2.0245 2.0245e-05
15 TRE 15A 0 - 0,93 m 0.48 2.6620 2.6620e-05
Ba Sn Cd Pd Ag Mo Zr Sr Rb As Se Au Pb W Zn Cu Ni
1 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
2 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
3 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
4 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
5 302.20 0.00 0.00 0 0.00 0 337.85 40.37 26.33 0.00 0 0 0 0 0 0 0
6 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
7 405.44 167.71 37.32 0 78.81 0 402.12 36.37 26.14 7.98 0 0 0 0 0 0 0
8 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
9 0.00 0.00 0.00 0 0.00 0 503.24 44.96 31.94 0.00 0 0 0 0 0 0 0
10 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
11 200.84 0.00 0.00 0 0.00 0 200.09 40.17 27.75 0.00 0 0 0 0 0 0 0
12 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
13 240.12 0.00 0.00 0 0.00 0 188.05 39.25 30.40 0.00 0 0 0 0 0 0 0
14 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
15 149.52 0.00 0.00 0 0.00 0 262.96 42.20 26.38 0.00 0 0 0 0 0 0 0
(完整的 csv 文件): https ://www.dropbox.com/s/4y8bb7nw4k5erkd/TRE15AExpo.csv?dl=0
我尝试使用 na.approx 替换测量之间的 NA。因此,我使用深度(在我的数据框中称为 Tiefe)作为索引创建了一个动物园系列(如在许多其他类似问题中所见)。
library(zoo)
TRE_Tiefe<- zoo(TRE15A)
index(TRE_Tiefe) <- TRE_Tiefe[,3]
所以我尝试运行 na.approx,希望它能够插入化学元素的缺失值......
TRE_Tiefe_approx <-na.approx(TRE_Tiefe, x= TRE_Tiefe$Tiefe, xout = TRE_Tiefe$Ba, na.rm = TRUE, maxgap=1)
但我得到的只是......
Error in merge.zoo(object.x, zoo(, xout)) :
series cannot be merged with non-unique index entries in a series
Zusätzlich: Warnmeldung:
In zoo(, xout) :
some methods for “zoo” objects do not work if the index entries in ‘order.by’ are not unique
我不确定我的错误在哪里以及如何正确应用 na.approx (或任何其他函数,如果 na.approx 不是正确的选项)来插入我的缺失值。我真的很感激一些帮助!提前感谢您的时间:-)
解决方案
推荐阅读
- java - 需要在 MVC portlet 中包含 org.json 包以在 Liferay 7 中解析 JSON
- java - 带有外键的休眠更新表
- python - 概率质量函数 (PMF):使用 matplotlib.pyplot.plot 将概率绘制为列
- javascript - 创建动态表:带有标题/标签的部分 - 其相关的动态行、列,然后是另一个类似的部分
- math - 如何在排列组合中处理这类问题?
- python - 如何清理一串数据以便在 Pandas 中使用/将一列转换为多列
- java - Json 到 Graphql-spqr 中的对象反序列化问题
- c# - 如何使用基于 ASP.NET Core 资源的授权而不在各处复制 if/else 代码
- fortran - MergeSort 与抗锯齿规则
- javascript - 如何将 python 变量发送到 javascript?python是cgi脚本吗?