我正在使用Julia 0.5.1中的Dataframes -pre+2从github本地提取和构建,我也尝试过Mac下载0.5下载,并且我很难理解如何正确地使用空标签和可空数组。
df = DataFrame(x=rand(20), y=rand(20))
mean(df[:x])
ERROR: MethodError: no method matching /(::Nullable{Float64}, ::Int64)因此,这些错误似乎告诉我,该操作不是为Nullable{Float}和Int定义的,只是尝试了如下所示的操作
Nullable(2.) / 1会导致同样的错误。
不过,我对文档 for DataFrames感到困惑,因为它显示的操作如下:
mean(df[1])
median(df[1])
mean(df[:A])
median(df[:A])
df = DataFrame(A = 1:4, B = randn(4))
colwise(cumsum, df)所有这些都会导致在我的机器上执行类似的未定义方法错误。
我不确定这是当前生态系统中的正确行为还是构建/包版本问题。
发布于 2016-10-07 10:05:31
由于某种原因,您安装了DataFrames的开发(主)版本。如果您在某个时间点运行了Pkg.develop("DataFrames"),就有可能发生这种情况。
DataFrames正在经历一次重大重写,因此许多事情在开发版本上可能无法正确工作。发行版应该正确工作。删除您的.julia文件夹使您回到发行版。
您可以使用Pkg.status函数检查包的状态。所以,例如
julia> Pkg.status("DataFrames")
- DataFrames 0.8.4如果任何包都安装了其主版本,则将在结果中指定。
julia> Pkg.status("JavaCall")
- JavaCall 0.4.2+ master 没有任何参数的函数Pkg.status()将显示所有包的状态。
https://stackoverflow.com/questions/39761923
复制相似问题