Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

Convert wind degrees to direction

Hi everyone

 

Can anyone help with how to convert wind degrees to direction. For example, I have the degrees like below but want the column on the right. Thanks in advance!

 

DegDir
202SSW
208SSW
229SW
249WSW
276W
311NW
335NNW
345NNW
24NNE
24NNE
29NNE
34NE
26NNE
22NNE
17NNE
  • Hi Anonymous 

     

    You don't describe the ranges for each Dir. I've just used 4 Dirs as an example to show the pattern you can use. You would just have to update/expand the conditions to what you need.  

     

     

    NewColumn =
    VAR  _Deg = Table1[Deg]
    RETURN
       SWITCH(TRUE(),
                    (_Deg >= 0 &&  _Deg< 90), "N",
                    (_Deg >= 90 &&  _Deg< 180), "E",
                    (_Deg >= 180 &&  _Deg< 270), "S",
                    (_Deg >= 270 &&  _Deg< 360), "W"
    
       )

     

3 Replies

  • AlB's avatar
    AlB
    Community Champion

    Hi Anonymous 

     

    You don't describe the ranges for each Dir. I've just used 4 Dirs as an example to show the pattern you can use. You would just have to update/expand the conditions to what you need.  

     

     

    NewColumn =
    VAR  _Deg = Table1[Deg]
    RETURN
       SWITCH(TRUE(),
                    (_Deg >= 0 &&  _Deg< 90), "N",
                    (_Deg >= 90 &&  _Deg< 180), "E",
                    (_Deg >= 180 &&  _Deg< 270), "S",
                    (_Deg >= 270 &&  _Deg< 360), "W"
    
       )

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thanks AIB. I don't fully understand how to implement your solution. I'm sure it works but it got me thinking of a way I could do it through the query editor

       

       #"Added Conditional Column" = Table.AddColumn(#"PREVIOUS STEP", "dir", each 
      if [deg] >= 348.75 then "N" else 
      if [deg] > 326.25 then "NNW" else 
      if [deg] > 303.75 then "NW" else 
      if [deg] > 281.25 then "WNW" else 
      if [deg] > 258.75 then "W" else 
      if [deg] > 236.25 then "WSW" else 
      if [deg] > 213.75 then "SW" else 
      if [deg] > 191.25 then "SSW" else 
      if [deg] > 168.75 then "S" else 
      if [deg] > 146.25 then "SSE" else 
      if [deg] > 123.75 then "SE" else 
      if [deg] > 101.25 then "ESE" else 
      if [deg] > 78.75 then "E" else 
      if [deg] > 56.25 then "ENE" else 
      if [deg] > 33.75 then "NE" else 
      if [deg] > 11.25 then "NNE" else 
      if [deg] >= 0 then "N" else null ),
      
      
    • kitrito's avatar
      kitrito
      New Member

      could you tell me, what is this programme? to insert in this code