9
9
# ' [adverse_deviation_from_reference()] or [critical_events()]
10
10
# ' @param varName The column name of the agregated data in the output_table
11
11
# ' @param sixBreaks Breaks defining the lower limits of the categories.
12
- # ' @param NA_processing Either "interpolation" or "continuing ".
13
- # ' Defines if NA values between two sides are either interpolated (default) or
14
- # ' kept constant based on an upstream value.
12
+ # ' @param NA_processing Either "interpolation" or "steps ".
13
+ # ' Defines if NA values between two locations are either interpolated (default)
14
+ # ' or kept constant based on an upstream value.
15
15
# '
16
16
# ' @details
17
17
# ' The qsim_misa_table does not provide information for every location within
@@ -43,19 +43,20 @@ extend_riverTable <- function(
43
43
44
44
river_table [[" value" ]] <- NA
45
45
# filter results for river id
46
- data_table <- aggregated_data [aggregated_data $ verknet_river == river_id &
47
- ! is.na(aggregated_data $ verknet_river ),]
46
+ data_table <- aggregated_data [aggregated_data $ qsimVis_river == river_id &
47
+ ! is.na(aggregated_data $ qsimVis_river ),]
48
48
49
49
# apply results to closest verknet node, if not already defined
50
50
km_verknet <- river_table $ km
51
51
for (i in seq_len(nrow(data_table ))){
52
52
km_result <- data_table $ km [i ]
53
53
km_diff <- abs(km_result - km_verknet )
54
54
node_match <- which(km_diff == min(km_diff ))
55
+ # select nodes only, that were not selected before
55
56
single_node_match <- node_match [which(is.na(river_table $ value [node_match ]))]
56
57
if (length(single_node_match ) == 1L ){
57
58
river_table $ value [single_node_match ] <- data_table [[varName ]][i ]
58
- } else if (length(single_node_match ) > 1L ){
59
+ } else if (length(single_node_match ) > 1L ){ # if more than one points of equal distance, use first of them
59
60
river_table $ value [single_node_match [1 ]] <- data_table [[varName ]][i ]
60
61
}
61
62
}
@@ -80,11 +81,11 @@ extend_riverTable <- function(
80
81
81
82
river_table $ value <-
82
83
if (NA_processing == " interpolation" ){
83
- round( interpolate_multipleNA(
84
+ interpolate_multipleNA(
84
85
data_vector = river_table $ value ,
85
86
max_na = 1000 ,
86
- diff_x = river_table $ distance_to_neighbour )[[1 ]], 1 )
87
- } else if (NA_processing == " continuing " ){
87
+ diff_x = river_table $ distance_to_neighbour )[[1 ]]
88
+ } else if (NA_processing == " steps " ){
88
89
insert_downstreamNA(data_vector = river_table $ value )
89
90
}
90
91
0 commit comments