我试图从列表类型列中的一个记录中创建一个新列。该值是与纬度和经度字段相对应的国家/地区。这些信息是从Bing Map API获取的,该API使用从Web获取数据(在此教程后面:https://sqldusty.com/2016/04/26/power-bi-and-the-bing-maps-api/)。Power BI从嵌套记录值创建列
基本上我需要List.Record [1] .address.countryRegion。是否有可能在没有“扩展到新行”的情况下创建一个包含此特定值的列?问题是,一些列的回来与法国和行数增加到超过1000,但应该只有大约250
下面是我如何得到列的列:
个1.从网络获取数据
2.使用的基本选项,并用我的Bing地图键的位置粘贴工作的API请求。然后点击确定。
http://dev.virtualearth.net/REST/v1/Locations/point=40,-122?&key=BingMapsKey
导航到在查看>高级编辑器高级编辑。
4.制造使用纬度和经度作为输入的函数
let getCountry = (Latitude as text, Longitude as text) =>
let
Source = Json.Document(Web.Contents("http://dev.virtualearth.net/REST/v1/Locations/point="& Latitude &","& Longitude &"?&key=BingMapsKey"))
in
Source
in
getCountry
5.更名的功能GetCountry,然后导航到期望的表格添加列(与经度和纬度)
7.之所以选择GetCountry从功能列表中,改变的类型列名和分配的输入各自的列名称(纬度和经度)。然后点击确定。
8.该列出现在右侧。我滤除了“resourceSets”之外的所有列,因为它具有地址值。
编辑我找到了一种方法,以减少在请求返回列表的数量,这是只要求国家/地区作为查询参数:
http://dev.virtualearth.net/REST/v1/Locations/40,-122?key=BingMapsKey&includeEntityTypes=CountryRegion
这适用于我现在的需求,但也许这是一个好主意,保持这个打开看是否有人知道如何从嵌套表值创建表?感谢你的帮助!
你能否详细说明如何从Bing的API和功能是什么,将调用到了你的数据获取记录列表?以一些示例数据为出发点,然后按照所有步骤获取数据很好。 – Joe
@Joe我刚刚更新了问题,包括我如何从Bing API获取数据,并使用了函数 –