簡體   English   中英

作業幫助:Python如何使用long和lat確定推文的來源

[英]Homework Help: Python how to determine origin of a tweet using long and lat

我對作業中的某個部分感到非常困惑,該部分沒有評分或其他任何內容,但我仍然希望能夠完成並理解它。

我正在嘗試“近似”與其時區相對應的區域(不是真實數據)。 所以東部( P1。P2。P3,P4 ,太平洋( P7,P8,P9,P10 ),山區( P5,P6,P7,P8 ),中央( P3,P4,P5,P6 )....

我試圖通過確定該推文的緯度和經度所屬的區域來確定該推文的來源(我有一個txt文件,所有推文均具有與之相關的[36.970152730000002, -84.090040380000005] 4 2011-09-02 17:40:11 Chicken flatheads at taco bell my life is complete)和經度編號。例如: [36.970152730000002, -84.090040380000005] 4 2011-09-02 17:40:11 Chicken flatheads at taco bell my life is complete) 點的值是:(矩形)

p1 = (49.189787, -67.444574) 
p2 = (24.660845, -67.444574)
p3 = (49.189787, -87.518395) 
p4 = (24.660845, -87.518395) 
p5 = (49.189787, -101.998892)
p6 = (24.660845, -101.998892) 
p7 = (49.189787, -115.236428) 
p8 = (24.660845, -115.236428) 
p9 = (49.189787, -125.242264)
p10 = (24.660845, -125.242264)

例如,如果一條推文介於p1,p2,p3,p4之間,則它們來自東部。 我該怎么做?

是的,這是家庭作業的一部分,我知道有時候你們不喜歡協助家庭作業,尤其是如果沒有提供任何幫助。 但是我5個小時前給我的老師發了電子郵件,盡管他承諾他會在今晚(12:48 am)答復,但他仍未回應。

答案會帶有解釋,不勝感激,但即使發表評論也將有所幫助:)它是一項長期的工作,我完成了95%的工作,僅此部分是必需的..但我對長期的經商感到困惑。

假設區域是矩形。

只需檢查lat的值,並與“ border”值比較長即可。

因此,對於東方:

if lat >= 24.660845 and lat < 49.189787 and long <= -67.444574 and long > -87.518395:
    return True 

或者,如果您所顯示的區域是連續的(並且僅在經度上發生變化),則只需檢查一下即可。

當然,如果區域是不規則的多邊形,那將是一個全新的問題。

編輯 :一種方法是使用contains(lat,long)方法創建Region類:

class Region:
    def __init__(self, lat_tuple, long_tuple):
        self.lat_tuple = lat_tuple
        self.long_tuple = long_tuple

    def contains(self, lat, long):
        return self.lat_tuple[0] <= lat and lat < self.lat_tuple[1] and\
               self.long_tuple[0] <= long and long < self.long_tuple[1]

並將其用作:

eastern = Region((24.660845, 49.189787), (-87.518395, -67.444574))
print(eastern.contains(34.0, - 70.10))
print(eastern.contains(14.0, - 70.10))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM