我是 Julia 的新手,有一个简单的问题。我有一个具有以下结构的 csv 文件:[类别、名称、计数]。我有两件事要创造。
1,我想在 julia 中创建一个函数,其中 groupBy 类别并将计数相加(名称被忽略)。所以输出是 [Name, Count]。然后我将通过设置 x= Name 和 y= Count 来生成条形图
2,我想为每个类别生成多个图,其中每个名称的计数绘制在单独的条形图上。那么迭代绘图过程?
我想我已经掌握了绘图的窍门,但我不确定如何执行 groupBy 过程。对教程的任何帮助/重定向将不胜感激。
我的数据示例:
(net_worth,khan,14)
(net_worth,kevin,15)
(net_worth,bill,16)
我目前正在研究的功能:
function wordcount(text,opinion,number)
words= text
counts= Dict()
for w = words
counts[w]= number
end
return counts
end
function wcreduce(wcs)
counts=Dict()
for c in wcs, (k,v) in c
counts[k] = get(counts,k,0)+v
end
return counts
end
我想我正在寻找像 reduceByKey 或 GroupByKey 这样的函数。
最佳答案
所以我通过在 DataFrames 上使用 Julia by 函数解决了这个问题,
首先使用以下方法加载数据 csv:
data = readtable("iris.csv")
现在它的功能是:
function trendingkeys(data::DataFrame,trends::Symbol,funcadd::Function)
by(data, :trends, funcadd -> sum(funcadd[:counts]))
end
我必须说。 DataFrame 太聪明了。
关于plot - Julia 组按名称和总结计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29822469/