合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

        GEOG3代寫、代做Python編程設計

        時間:2023-11-24  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



        GEOG3/71551 Understanding GIS
        Tuesday 9-12, Simon Building Room 6.004
        Home Hints and Tips Solutions
        Assessment 2 - Weighted Redistribution Assessment 2 - Weighted Redistribution
        In which you apply the skills that you have learned to reproduce an algorithm from the
        literature
        Introduction Introduction
        Ever since the emergence of large scale web services for geocoding and plotting data, there
        has been a proliferation of ‘heatmaps’ seeking to reveal the spatial distribution of pretty
        much any pnenomena that mappers could get their hands on. You can find these maps
        everywhere!
        You should always be wary of heatmaps for a number of reasons, chief amongst which is that
        changing the settings of the heatmap can quite dramatically change the results, and there is
        rarely any justification for the choice of those settings. However, the worst heatmaps occur
        when the underlying data are at multiple scales (i.e, multiple levels of generalisation generalisation),
        which o!en happens when they are passively geocoded passively geocoded (meaning that the locations were
        derived from place names in the dataset, which were not originally intended to be used to
        locate the data on a map).
        The variation in scale in passively geocoded passively geocoded datasets means that they tend to suffer from
        an issue called false hotspots false hotspots, in which the heatmaps unexpectedly give false patterns. You
        can see this effect in the below image, where a suffers from false hotspots; and b is the same
        dataset, restored to a pattern more reflective of the ‘true’ location of each data point.
        This problem is discussed (in context of Twitter data relating to the Royal Wedding) of Prince
        William and Kate Middleton by a paper by Dr. Jonny Huck in the Journal of Spatial
        Information Science. The paper includes a simple algorithm, which allows false hotspots to
        be dissipated into realistic patterns based on a weighting surface (population density in this
        case). In general terms, Weighted Redistribution could be considered an example of a spatial
        disaggregation algorithm (of which there are many examples), but this one is quite unusual
        in that it disaggregates data into a surface, rather than smaller aerial units.
        Download and read the article, making sure that you understand the problem of False
        Hotspots Hotspots and the principles of the Weighted Redistribution Weighted Redistribution algorithm that may be used
        to solve it.
        The Question The Question
        Produce your own implementation of the weighted redistribution algorithm weighted redistribution algorithm and apply it
        to the provided ‘tweets’ dataset in order to determine which parts of Greater Manchester
        were most interested in the Royal Wedding as part of a scheme to target advertising during
        such events.
        You will have a random sample of 1,023 level 3 tweets relating to the Royal Wedding 1,023 level 3 tweets relating to the Royal Wedding
        that have been geocoded to districts in Greater Manchester. Using these and the weighted weighted
        redistribution redistribution algorithm, you should work out a likely spatial distirbution for Twitter
        activity across Manchester relating to the Royal Wedding.
        Produce a 1,000 word report explaining and justifying your implementation of the weighted weighted
        redistribution redistribution algorithm to the level 3 Twitter data level 3 Twitter data in order to produce your map.
        The analysis and outputs should be completed entirely in Python and the report should
        include at least one map. You must submit both your code and report.
        Make sure that you read this whole document before you start!
        The datasets for the Assessment are available here. This contains:
        level3-tweets-subset the tweets themselves
        100m_pop_2019: a weighting surface (simple population density surface at 100m
        resolution)
        gm-districts: polygons representing the districts (level 3) of Greater Manchester to
        which these tweets were geocoded.
        Please note that you are not limited to the data provided, nor are you required to use the
        provided weighting surface - I would encourage you to include any data that you like to
        embellish the analytical or cartographic quality of your report.
        Contents Contents
        Rules of Engagement
        Some Pointers
        Marking Criteria
        Rules of Engagement Rules of Engagement
        Submission Submission
        This work must be submitted by 14:00 on Thursday 14 14:00 on Thursday 14th December 2023 (Week 12) December 2023 (Week 12).
        You must submit your code and a report of up to up to 1000 words in length (±10%)
        describing the choices that you made in order to implement this algorithm in an elegant,
        efficient and robust manner.
        Code snippets can be used in the report where appropriate (and are not included in the word
        count) - but they should be styled using an appropriate font (I recommend courier).
        Remember that I do not just want a line by line description of your code (that is what your
        comments are for)!
        Note that you must submit your assessment as described here - not having read Note that you must submit your assessment as described here - not having read
        the below instructions will not be accepted as a reason for late or incorrect the below instructions will not be accepted as a reason for late or incorrect
        submission submission
        1. The Code part of your submission must be compressed compressed into a .zip (not *.rar or any
        other format) file and submitted via a Dropbox File Request: Dropbox File Request: - links provided below.
        The filename should be named using your student number in the format
        123456789.zip.
        1. Undergraduates Undergraduates should submit here.
        2. Postgraduates Postgraduates should submit here.
        2. The Report part of your submission must be submitted as usual via the Turnitin on the
        Assessment Assessment page of the Blackboard Blackboard site. The report should contain the map(s) that
        you have produced. Submitted files should be named in the format: 123456789.docx
        or 123456789.pdf etc.
        Code Template Code Template
        In order to assess the efficiency of your algorithm, I need to be able to time how long your
        code takes to execute the task. Accordingly, you must use the below template you must use the below template for your
        code, and ALL of your code must be between the # NO CODE ABOVE HERE and # NO
        CODE BELOW HERE comments.
        """
        Understanding GIS: Assessment 2
        @author [INSERT STUDENT NUMBER HERE]
        An Implementation Weighted Redistribution Algorithm (Huck et al. 20"""
        In addition to this, please do not use any libraries that are not already available please do not use any libraries that are not already available
        within the within the understandinggis understandinggis anaconda anaconda environment.
        Zip File Structure Zip File Structure
        Remember that your submission must include all files that are required for your code to run
        successfully must be included (otherwise your code won’t work!).
        I would recommend the following file structure within your main Assessment folder:
        - 123456789/
        - 123456789.py
        - data/
        - 100m_pop_2019.*
        - gm-districts.*
        - level3-tweets-subset.*
        - [any other data files that you need]
        - out/
        - manchester_tweets.png
        Please make sure that you name both your directory and python file using your Please make sure that you name both your directory and python file using your
        student number! student number!
        It is also important that all of your file paths are relative file paths relative file paths (e.g.
        ./data/my_file.shp). If you use absolute file paths absolute file paths (e.g.
        C:/jimbob/understandinggis/assessment1/data/my_file.shp) then your
        code will not work when I run it code will not work when I run it! Please also make sure that the paths link to the data
        files inside your file, and not to elsewhere on your computer!
        # import the time library
        from time import time
        # set start time
        start_time = time() # NO CODE ABOVE HERE
        '''ALL CODE MUST BE INSIDE HERE'''
        # report runtime
        print(f"completed in: {time() - start_time} seconds") # NO CODE B
        A good way to ensure that this has worked is to either:
        write your code in a new directory that is not inside your understandinggis
        directory - this will avoid accidentally pointing your to the wrong version of your datasets
        (i.e. the one that you use in the practicals)
        or:
        write your code inside your understandinggis directory as normal, then just before
        submission extract your zip file to a location elsewhere on your machine and test to see if
        it still works
        If you don’t know how to zip a folder, you can see how to do so here:
        Windows
        Mac
        Please make sure that you use Please make sure that you use .zip format format (as per the instructions) - and not other
        forms of compression (e.g. .rar, .tar, .gz, .7z etc.).
        Some Pointers Some Pointers
        Remember the golden rule: Don’t Panic! Don’t Panic! You have done almost every part of this
        assessment in the course already, this is just a matter of finding the right bits and putting
        them together! The Pseudocode for this assessment is given in the paper, so all you have to
        do is implement it.
        As with Assessment 1 - the key is to plan what you are going to do before you start coding -
        don’t just dive in and hope for the best! All you need to do is keep breaking down each stage
        into smaller and smaller jobs until you have a clear idea of how the program should look
        (think back to our session on computational thinking computational thinking). As with Assessment 1, everything
        that you need to be able to do has been covered in the course before, so if you find yourself
        heading too far off the beaten track, then this is a good clue that you might be
        overcomplicating things!
        As with before, you can reproduce this algorithm entirely using things that you have already
        done in this course, and additional help is available in the Hints and Tips section below.
        Remember - break each part of the algorithm down into small steps again and again until
        each step equates to approximately one line of code.
        Note that you are only undertaking this analysis for a single level, so you can ignore the
        outer (first) loop described in the pseudocode in the paper (which loops through multiple
        levels).
        The eagle-eyed of you will note from the paper that the original so!ware is Open Source
        (written in Java) and published here. You are welcome to look at this to help you (this is the
        file with the algorithm in it if you want it) - but please don’t be too reliant on this code, or feel
        bad if you struggle to read it (much of it probably isn’t that useful to you, and it is in a
        completely different and much lower level language). Focus on the approaches that you have
        learned in this course, and remember to maximise efficiency wherever possible! Crucially, do
        not attempt to simply copy and paste this code and convert it to Python - this will not attempt to simply copy and paste this code and convert it to Python - this will
        not result in a good mark not result in a good mark.
        Report
        In the report you should briefly explain why the algorithm is necesssary and how it works,
        before providing justification justification for the approaches that you have taken in your
        implementation, and a discussion around the limitations limitations of your the algorithm and your
        implementation of it. In all cases, we are looking for you to demonstrate that you have
        understood understood both the algorithm and what you have done to implement it.
        Creating a Random Point (Minimum Bounding Radius) Creating a Random Point (Minimum Bounding Radius)
        In the original version, random points are generated using a random distance and direction
        from the centroid centroid of polygon. You will notice that this is quite different to the approach
        given in Understanding Distortion, which simply generates a random x an y coordinate based
        on the bounding box of the feature. Both are equally effective, and there are no more or less
        marks for either approach - though the bounding box-based approach from Understanding
        Distortion is likely easier, and perhaps slightly more efficient.
        If you do want to use the minimal bounding radius minimal bounding radius approach, it is achieved simply by the
        following steps:
        1. Get the centroid of the polygon
        2. Loop through each node in the polygon to find the distance from the centroid to the
        furthest away node
        3. Generate a random number between 0 and 360 (direction) and between 0 and the
        distance that you calculated in step 2
        4. Calculate the location of the new point at the specified distance and direction from the
        centroid - you can do this using the offset() function that we used in week 5
        Code Presentation Code Presentation
        Broadly speaking, your code should be presented in the following form (all of which should
        be contained in the appropriate part of the template, marked by '''ALL CODE MUST BE
        INSIDE HERE'''):
        1. import statements
        2. functions (if any)
        3. main code
        You code should be well commented commented (remember the rule of thirds rule of thirds!) and do not leave in
        any unnecessaary testing material, such as print() statements that do not contribute to
        the user experience.
        Also make sure that you are using all of the libraries that you have imported - if you load a lot
        of unnecessary libraries, this demonstrates poor understanding (as well as slowing down
        your code)!
        Error Messages Error Messages
        Remember, when you get an error message in the console, it is not the computer telling you
        off or making fun of you - it is trying to help you! If you read it carefully it will tell you both
        what the problem is and even which line of code is causing it - so don’t get upset when you
        get a lot of errors, find the line of code that is causing the problem, read the description
        (Paste it into Google if you don’t understand it) and see if you can solve it - you’ll probably
        find that in most cases you can!
        It is also worth remembering that the error message is extremely extremely unlikely to be incorrect
        (though it can have been caused by another problem just above it); and it is extremely
        unlikely that there is an error in one of the libraries in the understandinggis
        environment. If, for example, it says it can’t find a file and you are sure that it’s there, then
        either your file path or the working directory (top right hand corner of Spyder) is wrong.
        The fact is, programming is 20% writing code and 80% debugging it. This doesn’t change as
        you get more experienced, the errors just get more complicated!!
        Hints & Tips Hints & Tips
        1. This is not like an essay that you can bash out the night before - the longer you give
        yourself to complete this, the easier you will make it for yourself.
        2. Be sure to select your parameters (such as and ) for the algorithm carefully - the paper
        explains how they affect the analysis, so use this knowledge and some
        experimentation experimentation to get the best result for your client - you will definitely want to
        explain the variables and your selected values to your client.
        3. Note that you are only undertaking this analysis for a single level, so you can ignore the
        outer (first) loop described in the pseudocode in the paper (which loops through
        multiple levels).
        4. Look back to the lectures and practical material, and make use of the Hints and Solutions
        pages.
        5. If you do feel like you are starting to panic - don’t suffer in silence - let me know!
        Marking Criteria Marking Criteria
        Marks will be given based upon:
        The quality of the report (35% of assignment grade), including:
        A clear and concise explanation of what you have done and why, demonstrating an
        understanding understanding of the process and why it is necessary. Consider if you might
        illustrate the process most effectively using more than one map. You should cover
        both:
        The algorithm itself (presented in the paper)
        Your implementation of it (how you achieved this in Python)
        A detailed explanation of the limitations limitations of your analysis, including a clear
        demonstration of the understanding understanding of the Geographical Information Science
        issues involved.
        In both of the above, you would expect clear links to the material that we have
        covered in class as well as the Huck et al. 2015 paper.
        A brief justification of your chosen CRS.
        The quality of the algorithm algorithm (35% of assignment grade), including:
        Efficiency iciency (the speed with which your algorithm resolves the problem)
        Robustness Robustness (the script will not fail if it encounters ’normal’ problems, such as
        incorrect file paths, missing data, unexpected inputs, and so on).
        The quality of the code (20% of assignment grade), including:
        n r
        Neatness Neatness and Elegance Elegance (the script is well written and well presented)
        Comments Comments (demonstrating a thorough understanding of the approaches that you
        have used)
        The cartographic quality of the resulting map(s) (10% of assignment grade), including:
        Aesthetic quality and readability
        Selection (and justification) of a suitable projection
        The key to this is in the name of the course: In both your code and report I want you to
        demonstrate a clear Understanding Understanding of what you have done - this is why comments are so
        important in your code!
        Finished! Finished!
        請加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

        掃一掃在手機打開當前頁
      1. 上一篇:代做CSC3150、代寫Java,c++編程
      2. 下一篇:代寫ECSE 4670、Python程序語言代做
      3. 無相關信息
        合肥生活資訊

        合肥圖文信息
        急尋熱仿真分析?代做熱仿真服務+熱設計優化
        急尋熱仿真分析?代做熱仿真服務+熱設計優化
        出評 開團工具
        出評 開團工具
        挖掘機濾芯提升發動機性能
        挖掘機濾芯提升發動機性能
        海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
        海信羅馬假日洗衣機亮相AWE 復古美學與現代
        合肥機場巴士4號線
        合肥機場巴士4號線
        合肥機場巴士3號線
        合肥機場巴士3號線
        合肥機場巴士2號線
        合肥機場巴士2號線
        合肥機場巴士1號線
        合肥機場巴士1號線
      4. 短信驗證碼 酒店vi設計 deepseek 幣安下載 AI生圖 AI寫作 aippt AI生成圖片 trae

        關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

        Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
        ICP備06013414號-3 公安備 42010502001045

        主站蜘蛛池模板: 日韩人妻一区二区三区免费| 99久久精品国产高清一区二区 | 内射女校花一区二区三区| 精品国产AV一区二区三区| 一区二区视频在线| 波多野结衣中文字幕一区| 国产精品电影一区| 国产精品综合一区二区| 波多野结衣一区二区三区| 亚洲国产精品无码久久一区二区 | 成人一区二区三区视频在线观看| 久久精品一区二区免费看| 伊人精品视频一区二区三区| 久久亚洲中文字幕精品一区四| 人妻无码一区二区三区| 国产aⅴ一区二区三区| 国产精品亚洲一区二区三区在线观看| 欧美日韩国产免费一区二区三区 | 国产一区二区影院| 国产精品一区二区综合| 美女视频一区二区| 青娱乐国产官网极品一区| 色婷婷av一区二区三区仙踪林| 亚洲av无一区二区三区| 国产欧美一区二区精品仙草咪| 一区二区手机视频| 一区二区三区在线|日本| 波多野结衣一区二区三区高清av | 一区二区在线观看视频| 无码人妻精品一区二区三区99仓本 | 黄桃AV无码免费一区二区三区| 久久久久久一区国产精品| 亚洲人成人一区二区三区 | 女人和拘做受全程看视频日本综合a一区二区视频 | 精品亚洲AV无码一区二区| AA区一区二区三无码精片| 丰满爆乳无码一区二区三区| 亚洲AⅤ无码一区二区三区在线 | 色妞AV永久一区二区国产AV| 无码人妻一区二区三区免费n鬼沢 无码人妻一区二区三区免费看 | 日本一区二区三区不卡视频 |