使用PowerBI

时间:2016-10-18 13:00:02

标签: api powerbi powerquery azure-machine-learning-studio

感谢您回复我。

基本上我订阅了Cluster API服务(cortana分析)。这是Microsoft机器学习站点的示例应用程序

http://microsoftazuremachinelearning.azurewebsites.net/ClusterModel.aspx

正如您所看到的,有两个参数要传递

输入

ķ

输入可以是10; 5; 2,18; 1; 6,7; 5; 5,22; 3; 4,12; 2; 1,10; 3; 4(每行由半冒号分隔) )

K是簇号:5(例如)

因此,要使用此API,请使用PowerBI编辑查询

所以去获取数据>更多> Azure> Microsoft Data MarketPlace,我可以看到我订阅的API列表,其中一个是我在上面的链接中提到的。

所以我加载它,因为Function让它称之为“得分”

然后我从csv文件中加载了能量表,我想将能量消耗分成5个簇。

所以我的数据布局是

年度能量

2001 6.28213

2002 14.12845

2003 5.55851

依此类推,假设我有100行数据。

所以我试图将“6.28213; 14.12845; 5.55851”,“5”传递给分数功能,但我不知道如何

  1. 将我的表格转换为记录

  2. 传递2个参数记录,将常数值5传递为K。

  3. 希望这是有道理的。

    请帮忙! :)

    提前谢谢。

1 个答案:

答案 0 :(得分:1)

要将一列数字转换为以分号分隔的文本,请执行以下操作:

  1. 转换您的能源列是类型文字。
  2. 在表格名称后添加[Energy],其中会显示数字列表。
  3. 使用Text.Combine将列表转换为;
  4. 分隔的文本值

    这是一个混搭的混搭:

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("NcjBCQAgDAPAXfKWYqKR7iLdfw1F8J63N9Q70bBCKQ5Ue6VbnEHl9L9xz2GniaoD", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Year = _t, Energy = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Year", Int64.Type}, {"Energy", type text}}),
        Custom1 = #"Changed Type"[Energy],
        Custom2 = Text.Combine(Custom1, ";")
    in
        Custom2
    

    一旦你有了一个功能,你就像YourFunction(Custum2, 5)

    一样调用它