Thanks, that's helpful! One tip: it's a good idea to make your reprex-es as small as possible, so for sorting out this problem with your slider there's no need to include all the code that formats the output table, for example.
OK, so there are quite a few problems with the logic that's determining the slider values. I'd encourage you to consider getting this part working in R outside of shiny, where it's easier to debug things, since the issues aren't really shiny-related — it seems to be basic R syntax that's tripping you up here.
I don't know how you want these slider values calculated, so I'll just run through what the code does right now:
maxkaw <- function(data) sapply(df, max, na.rm = TRUE)
minkaw <-function(data) sapply(df, min, na.rm = TRUE)
This bit defines two functions. The first problem is that each function accepts a parameter called data, but doesn't actually use the parameter in the function body — instead, the function uses df. This will sort of work, because R will go looking for something called df in the environment that the function was called from and eventually find the data frame named df that you defined, but it's very fragile.
So let's assume we rewrite these functions as:
maxkaw <- function(data) sapply(data, max, na.rm = TRUE)
minkaw <-function(data) sapply(data, min, na.rm = TRUE)
Now what they do is accept a data frame and attempt to find the min (or max) of every column, then return some sort of multi-valued data structure with all those mins and maxes. However, if you call these functions on your data frame df, you'll find that they fail since one of df's columns is non-numeric, so it won't work with min()/max().
Since your slider can only have one min and one max, I'm not sure why the code is finding the mins and maxes of all columns of the data frame? I suspect you intend to be doing something else here, like finding the min or max of only a single column?
sliderInput("slider","Select Range:", min = minkaw,
max = maxkaw,
value = c(minkaw,maxkaw))
Here, the minkaw() and maxkaw() functions have been called without parentheses — doing this just returns the function code itself, which is not something that sliderInput() knows what to do with. Maybe you meant to call, e.g., min = minkaw(df)? If so, you first need to make sure that minkaw(df) returns a single numeric value, which is what the min argument to sliderInput() is expecting.