我是朱莉娅的新手并且有一个简单的问题。我有一个具有以下结构的csv文件:[Category,Name,Count]。我有两件事我想创造。
1,我想在julia中创建一个函数,其中groupBy是Category并加上Counts(Name被忽略)。这样输出就是[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这样的函数。
答案 0 :(得分:4)
所以我通过在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非常聪明。