0
在R中我無法找到以度數計算方面的方法。2列之間的操作(度數值)
我有一個shapefile有2列的方面。第一欄ASPECT
對應於該點的新方面,第二欄Aspect
是參考方面。我想只保留ASPECT
列中值不大於或小於45°的值。我想爲每個值做這個計算。
我的數據是這樣的:
ID ASPECT Aspect
0 17.15395 223.9521
1 323.72394 225.1147
2 294.01069 225.7785
3 302.72811 226.4539
4 321.79413 227.1748
5 326.36743 227.9040
我想過爲了過濾所有不符合的價值觀做ASPECT
和Aspect
之間的差異。問題在於,由於它的度數有時會達到359,實際上只有幾度。
gr73999<-readOGR(dsn=wd, layer="73366_CORRPOINTS")
gr<-as.data.frame(gr73999)
gr_df<- gr[,c("ID","ASPECT","Aspect")]
gr_df$degree_diff<- gr_df$Aspect-gr_df$ASPECT
ID ASPECT Aspect Difference_aspect
0 17.15395 223.9521 -206.79816
1 323.72394 225.1147 98.60924
2 294.01069 225.7785 68.23220
3 302.72811 226.4539 76.27422
4 321.79413 227.1748 94.61931
5 326.36743 227.9040 98.46343
min(gr_df$degree_diff)
-359.0588
max(gr_df$degree_diff)
358.2314
我的問題是:我該怎麼做才能擁有我所有的度計算的?如果Aspect
是340而ASPECT
是10,是否可以有-30而不是330?
你可以把它放在一個循環中,並根據if/then的值執行不同的操作。你也可以使用apply – jwells