У меня DataFrames
есть пробелы в именах столбцов, потому что файлы CSV, из которых они были созданы, также имели пробелы в именах. DataFrame
s были созданы с помощью строк
csvnames::Array{String,1} = filter(x -> endswith(x, ".csv"), readdir(CSV_DIR))
dfs::Dict{String, DataFrame} = Dict( csvnames[i] => CSV.File(CSV_DIR * csvnames[i]) |> DataFrame for i in 1:length(csvnames))
У DataFrame
есть имена столбцов, такие как Tehtävä 1, но ни одно из следующих выражений не работает, когда я пытаюсь получить доступ к столбцу (здесь ecols
- это фрейм данных):
plot = axes.plot(ecols[Symbol("Tehtävä 1")])
выдает ошибкуTypeError("float() argument must be a string or a number, not 'PyCall.jlwrap'")
plot = axes.plot(ecols[:Tehtävä_1])
выдает ошибкуERROR: LoadError: ArgumentError: column name :Tehtävä_1 not found in the data frame; existing most similar names are: :Tehtävä 1
plot = axes.plot(ecols[:Tehtävä 1])
вызывает ошибкуERROR: LoadError: MethodError: no method matching typed_hcat(::DataFrame, ::Symbol, ::Int64)
Поэтому кажется, что у меня нет способа построить DataFrame
столбцов, в именах которых есть пробелы. Их печать работает нормально, так как строка
println(ecols[Symbol("Tehtävä 1")])
производит и массив чисел с плавающей запятой: [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]
, который должен. Matplotlib просто несовместим с DataFrame
s с пробелами в именах столбцов, и если это так, как я могу удалить все пробелы из столбцов Julia DataFrame
?
РЕДАКТИРОВАТЬ
Я забыл упомянуть один очень важный момент: DataFrame
содержит missing
значений, которые Matplotlib не может понять. Это вызывало ошибку 1. Мне все равно очень хотелось бы узнать, есть ли способ избавиться от любых пробелов в именах столбцов таблицы, возможно, во время создания DataFrame
.