Forum Discussion
Convert coordinates lambert 93 {[Coordinate X],[Coordinate Y]} into Latitude and Longitude
Hello everyone,
It has been a few weeks I am using Power Query and Power BI, however there are still a very important amount of things I have to learn.
Usually when I am confronting an issue, I would find the answer through the community. However, I am now stuck with the following problem and I do think there is an answer with Python from what I read from other website.
However, I am totally unfamiliar with Python and I do hope there is another way to do it on Power Query.
Here is my issue, I have two columns {[Coordinate X],[Coordinate Y]}, which are in lambert 93 format for instance:
{[722364.9],[6919869.7]}
But Power BI seems to only accept latitude and longitude coordinates.
How can we convert it but massively both columns?
Indeed there is a website where you can do it one by one, but there are more than 100k rows
Convertisseur de coordonnées gratuit en ligne (tool-online.com)
And another link I thought would help me was Python but my knowledge is for the moment too limited:
How to convert Lambert 93 to longitude and latitude with python 3 (moonbooks.org)
Many thanks in advance if someone could guide me!
Best regards
6 Replies
- AnonymousNot applicable
This is the most unhelpfull response I've ever seen.
"have you tried asking ChatGPT for the solution" ...
Oh boy, the humanity ....
- YrmoufRegular Visitor
Hi ams1 ,
Thanks for your advice, I tried so, but the code does not seem to work, I ended up with the following code
let Source = #"RPLS", // replace <Table> with the name of your source table #"Added Custom" = Table.AddColumn(Source, "Lat_Long", each let x = [Coordonnée X], // replace [Coordonnée X] with the name of your Lambert X coordinate column y = [Coordonnée Y], // replace [Coordonnée Y] with the name of your Lambert Y coordinate column wgs84 = List.Transform( CoordinateSystem.Transform( #"EPSG:2154", #"EPSG:4326", {x, y} ), each Number.Round(_, 7) ), lat = wgs84{0}, long = wgs84{1} ), #"Expanded Lat_Long" = Table.ExpandListColumn(#"Added Custom", "Lat_Long"), #"Renamed Columns" = Table.RenameColumns(#"Expanded Lat_Long", {"Lat_Long", "Lat_Long_WGS"}), #"Expanded Lat_Long_WGS" = Table.ExpandListColumn(#"Renamed Columns", "Lat_Long_WGS"), #"Extracted Values" = Table.TransformColumns(#"Expanded Lat_Long_WGS", {{"Lat_Long_WGS", each Text.Combine(List.Transform(_, Text.From), ","), type text}}), #"Split Column by Delimiter" = Table.SplitColumn(#"Extracted Values", "Lat_Long_WGS", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Latitude", "Longitude"}), #"Changed Type" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Latitude", type number}, {"Longitude", type number}}) in #"Changed Type"It looked like after prompting CHatgpt that
CoordinateSystem.Transformfunction is the source of the problem as it looks like I have to load a library, but I am not quite sure to do so when I looked into the one it adviced me to load but I guess I have to download from somewhere, but where to download it and where to load it?
Spatial = Extension.Load("Microsoft.Mashup.Engine1.Library.Spatial")Also, why the code does not take into account the variable "Spatial"?
Many thanks for your help
Have a nice day
- tekcimo-96New Member
Hello Yrmouf, did you find a solution ? i have the same problem, i would like to convert my lambert 93 cordinates to WGS. thank you for help
- ronrsnfldSuper User
What system are converting the Lambert 93 coordinates into? WGS84 or something else?
- YrmoufRegular Visitor