首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
代做program编程、代写Python程序设计
项目预算:
开发周期:
发布时间:
要求地区:
College of Arts, Technology and Environment
aCADEMIC YEAR 2023/24
Resit Assessment Brief
Submission and feedback dates
Submission deadline: Before 14:00 on 15th July 2024
This assessment is eligible for 48-hour late submission window.
Marks and Feedback due on: 12th August 2024
N.B. all times are 24-hour clock, current local time (at time of submission) in the UK.
Submission details
Module title and code: UFCFVQ-15-M Programming for Data Science
Assessment type: Practical Skill Assessment
Assessment title: Practical Coursework
Assessment weighting: 100% of total module mark
Size or length of assessment: No word limit; Development time 20 hours
Module learning outcomes assessed by this task:
1. Apply the principles of programming and data management to solve problems.
2. Demonstrate the use of an object-oriented paradigm when solving software problems.
3. Design and implement algorithms for numerical analysis.
4. Demonstrate the use of proactive error handling techniques to address software reliability and program vulnerability issues.
5. Critique and reflect on alternative solutions to a given problem or on their own work in a constructive way.
6. Undertake independent research activities with relation to innovative approaches to data science problem solving.
7. Demonstrate the use of Data Visualisation techniques for supporting numerical data analysis.
8. Demonstrate the use of a version control system (such as Git) as part of an integrated development process.
Completing your assessment
What am I required to do on this assessment?
For this assessment, you are required to complete four different tasks. A brief outline is given below. Exact details of what is required are given in Appendix 1.
1.Develop a set of functions to solve a programming problem using ONLY built-in Python functions and data structures.
2.Perform basic data analysis of a given dataset and identify an “interesting” pattern or trend within the data.
3.Write a reflective report about the process you followed while developing solutions to the two main programming tasks (i.e., 1 & 2 above).
Where should I start?
To demonstrate your understanding and programming skills it is important that you develop a sufficient knowledge of the module materials and gain practical experience of coding in Python before you begin this assessment. You should read the detailed description of each task given in Appendix 1.
Firstly, you should create a GitHub account and follow the instructions given by the tutor for accessing the GitHub Classroom that has been set up for this assessment. How to complete this will be covered during one of your workshops. In addition, there is a pre-recorded explanation of how to do this available in the Assessment folder on Blackboard. Secondly, you need to clone your GitHub repository to your local machine. Now, you should open a Jupyter Notebook console from Anaconda Navigator and load the Resit Programming Task 1 Template. You can now begin working through the programming requirements set out in Section A
What do I need to do to pass?
To pass this coursework assessment you will need to achieve an overall mark of 50% or above. Realistically, this will not be possible without at least attempting both programming tasks. However, you should make sure to attempt the other two task to ensure that you have maximised your mark for this assessment.
How do I achieve high marks in this assessment?
High marks can be achieved by carefully following the requirements set out in Appendix 1. Marks will be deducted for solutions which do not follow the requirements precisely. In addition, you should make sure that you demonstrate good coding standards, write an insightful reflective (rather than descriptive) process report, and follow all naming conventions set out in this assessment.
How does the learning and teaching relate to the assessment?
Week 1 focuses on Git and so following this material is important for accessing the assessment materials and submitting your work. Weeks 2 through 6 focus on basic Python programming. You should pay particular attention to Week 6 to identify built-in functions. These are important for the first task. Weeks 7 through 9 focus on how to use Python for data analysis and are important for the second task. Week 11’s Data Science demonstration may also be useful for the second task.
What additional resources may help me complete this assessment?
Additional resources that you might find useful for completing this assessment include:
Reflective Writing course at https://xerte.uwe.ac.uk/play_4988
Referencing information at https://www.uwe.ac.uk/study/study-support/study-skills/referencing
Module Discussion Boards: Coursework Queries and FAQs
The Module Leader and Module Tutors will also available via email to clarify any issues you may be having with the assessment. Formative feedback can be requested during the tutorial sessions.
What do I do if I am concerned about completing this assessment?
UWE Bristol offer a range of Assessment Support Options that you can explore through this link, and both Academic Support and Wellbeing Support are available.
For further information, please see the Academic Survival Guide.
How do I avoid an Assessment Offence on this module? 2
Use the support above if you feel unable to submit your own work for this module. The most common form of Assessment Offense for this type of assessment is copying code from another source (such as a forum, webpage, another student, etc) without referencing (and citing) it correctly. Referencing is an important part of academia, and you should become clear about when you need to reference an external source and how to reference it (more information is available in the study skills link above). However, it should be made clear that any copied code may result in partial marks for any sub-task in which it is used.
During the marking phase, an analysis of submissions will be made across the cohort to identify any evidence of collusion and/or plagiarism.
UWE Bristol’s UWE’s Assessment Offences Policy requires that you submit work that is entirely your own and reflects your own learning, so it is important to:
Ensure you reference all sources used, using the UWE Harvard and the guidance available on UWE’s Study Skills referencing pages.
Avoid copying and pasting any work into this assessment, including your own previous assessments, work from other students or internet sources.
Develop your own style, arguments, and wording, so avoid copying sources and changing individual words but keeping, essentially, the same sentences and/or structures from other sources.
Never give your work to others who may copy it
If an individual assessment, develop your own work and preparation, and do not allow anyone to make amends on your work (including proof-readers, who may highlight issues but not edit the work)
When submitting your work, you will be required to confirm that the work is your own, and text-matching software and other methods are routinely used to check submissions against other submissions to the university and internet sources. Details of what constitutes plagiarism and how to avoid it can be found on UWE’s Study Skills pages about avoiding plagiarism.
Marks and Feedback
Your assessment will be marked according to the marking criteria set out in each task in Appendix 1. You can use these to evaluate your own work before you submit.
Appendix 1 – Assessment Overview
This single coursework assessment involves four separate tasks. The requirements for each task are detailed below together with deliverables, submission details and grading criteria. Below is a breakdown of percentage weighting per task:
Task % Weighting
Programming Task 1 48
Programming Task 2 38
Process Development Report 14
Total 100
Section A. Programming Task 1
This programming task focuses on using Python to calculate a set of Student’s t-test statistics for a given dataset using ONLY built-in functions and data structures.
oFor Programming Task 1, you MUST NOT import any Python library functions. This means you cannot use Python modules such as math, SciPy, csv or libraries such as Pandas or NumPy.
To print the Student’s t-test statistic for a given pair of Python Lists, it would be very easy to use the ttest_rel() function provided in the SciPy library. However, this programming task is designed to assess your coding abilities and by preventing you from using this function you are forced to gain a deeper understanding of how to complete that task. To do this, you will need to develop your own algorithm. Try typing “calculate Student’s t-test statistic by hand” into your favourite search engine.
For your information, a t-test statistic values greater than 1.972 indicates a statistically significant result at a level of 5% (assuming a paired two-tailed test).
There is a single data file available in your resit GitHub repository for use in this programming task. The file contains data about the prevalence of mental health disorders in countries around the world in 2017 based on different age groups.
oThe data file is called resit_task1.csv. This CSV file includes a header row with multiple named data values.
oThis file is available in the Resit Materials section on Blackboard.
Students are expected to follow appropriate coding standards such as code commenting, docstrings, consistent identifier naming, code readability, and appropriate use of data structures.
A.1. Requirements
ID Requirement Description Marks Available
FR1 Develop a function to read a single specified column of data from a CSV file The function should accept two parameters: the data file name and a column number. The column number specifies which of the columns to read. It can range between 0 and n-1 (where n is the number of columns). The function should return two values: the column name and a List containing all the specified column’s data values. You should use the resit_task1.csv data file to test your function but your function should also work for other CSV files. An illustration of this is given in Appendix 2. 6
FR2 Develop a function to read CSV data from a file into memory The resit_task1.csv data file contains several columns of data values. This function should accept a single parameter: the data file name. It should make use of the function developed in FR1 to read all columns of data from the data file and add them to a Dictionary data structure. The Dictionary should contain one entry for each column in the CSV data file. An illustration of this is given in Appendix 3. 6
FR3 Develop a function to calculate a paired Student’s t-test statistic for two lists of data This function should calculate a paired Student’s t-test statistic for two lists of data. The function should take two lists of data (of equal length) as parameters. The function should ensure that the lists are of equal length otherwise raise an error. The function should return the calculated statistic value. 12
FR4 Develop a function to generate a set of paired Student’s t-test statistics for a given data file The function should accept one parameter: the Dictionary data structure generated in FR2. This function should make use of the function developed in FR3 to generate a paired Student’s t-test statistic for every pair of columns in the input data structure parameter. The function should return a list of tuples, each tuple containing the two column names and associated statistic value. An illustration of this is given in Appendix 4. 10
FR5 Develop a function to print a custom table This function should output the paired Student’s t-test statistics for a subset of the column pairs generated in FR4. The function should take three parameters: list of Student’s t-test statistic tuples, border character to use and which columns to include. You should indicate values which are statistically significant values (at the level of 5%) using stars, e.g., *2.43*. High marks will be given for good use of padding in the table cells to improve readability. An illustration of this is given in Appendix 5. 9
A.2. Deliverables
A Jupyter Notebook file (in .ipynb format) containing a complete solution to this Programming Task.
oYou must use the template provided[ There is a Jupyter Notebook template available in your GitHub repository - UFCFVQ-15-M_Resit_Programming_Task 1_Template.ipynb].
A.3. Submission
You should commit your completed Jupyter Notebook file to your resit GitHub repository with an appropriate commit message.
A.4. Grading Criteria
Marks are allocated as follows:
oup to 43 marks for the Python code solution
Marks will be awarded for each requirement according to the level of completion.
To gain high marks you must follow the requirement instruction precisely.
oup to 5 marks for adherence to good coding standards.
Section B. Programming Task 2
This programming task focuses on using NumPy/SciPy, Pandas, and Matplotlib/Seaborn to combine and analyse two datasets related to bike sharing in London between 2015 and 2017.
Two data files have been provided in your GitHub repository for this task.
oThe resit_task2a.csv data file contains the number of bike shares per hour between January 2015 and January 2017.
oThe resit_task2b.csv data file contains the temperature, “feels like” temperature, humidity, wind speed for every hour between 2015 and 2017.
Students are expected to follow appropriate coding standards such as code commenting, consistent identifier naming, code readability, and appropriate use of data structures.
B.1. Requirements
ID Requirement Description Marks Available
FR6 Read CSV data from two files and merge it into a single Data Frame For this task you should use the resit_task2a.csv and resit_task2b.csv data files. 4
FR7 Explore the dataset to identify an "interesting" pattern or trend[ An “interesting” pattern or trend might include a correlation between two columns of data, equality of two columns of data or estimating a linear or non-linear relationship between columns of data.] Use an appropriate visualisation tool (such as Matplotlib or Seaborn) to illustrate your exploration. You should include at least three visualisations as part of your exploration. You could consider other ways to explore the data such as data summaries or transformations. You must include an explanation of the dataset exploration, your selected "interesting" pattern or trend and your reasons for selecting it. 10
FR8 Detect and remove any outliers in the data used for your "interesting" pattern or trend Using an appropriate technique to detect and remove any outliers in the data used for your "interesting" pattern or trend. You must include an explanation of the detection method used, how it works, and the any outliers detected. NOTE: there may not be any detectable outliers using the selected detection method – if this is the case, please state this clearly in the explanation given. 6
FR9 Define a hypothesis to test your “interesting” pattern or trend Using an appropriate hypothesis testing formulation to define a hypothesis and provide an explanation for your choices. 6
FR10 Test your hypothesis with statistical significance level of 0.05 Using an appropriate Python library, test the hypothesis stated in FR9. You must include a detailed explanation of your findings to achieve good marks for this task. 7
B.2. Deliverables
A Jupyter Notebook file (in .ipynb format) containing a complete solution to this Programming Task.
oYou must use the template provided [ There is a Jupyter Notebook template available in your GitHub repository - UFCFVQ-15-M_Resit_Programming_Task_2_Template.ipynb].
B.3. Submission
You should commit your completed Jupyter Notebook file to your GitHub repository with an appropriate commit message.
B.4. Grading Criteria
Marks are allocated as follows:
oup to 33 marks for the Python code solution
Marks will be awarded for each requirement according to the level of completion.
To gain high marks you must follow the requirement instruction precisely.
oup to 5 marks for adherence to good coding standards.
Section C. Process Development Report
You are expected to identify the strengths/weaknesses of your approach to your coding tasks.
For this coursework, you must write a reflective report which focuses on the process you took to develop a solution to the two programming tasks described in Section A and Section B above. Please reflect on your experiences rather than simply describing what you did.
The report must be split into TWO different sections – one for each programming task.
Each section should:
oinclude an explanation of how you approached the task:
describe your thought process.
did you find it easy or difficult? Why?
what problems did you encounter? How did you overcome them?
oidentify any strengths/weaknesses of the approaches used.
oconsider how the approaches used could be improved.
osuggest alternative approaches that could have been taken instead of the ones you used.
C.1. Requirements
The development process report MUST be submitted in .docx format – pdf, pages, or any other file format will NOT be accepted for this task.
The report must not exceed 800 words. Please indicate the word count at the end of the document.
C.2. Deliverables
A development process report written in .docx format.
C.3. Submission
You should commit the report to your GitHub repository with an appropriate commit message.
C.4. Grading Criteria
There are 14 marks available for the report – 7 marks per section.
oMarks will be awarded for appropriate use of technical language, critical reflection on development process and quality of engagement with the reflective process.
Appendix 2 – Example Column Extraction
For the following illustration, you should assume that the column number parameter is equal to 1 for the data file. There are 9 columns in this file and so column number can range between 0 and 8. For this data, the function would return two values: “Glucose” and [148,85,183,89,137,116,78,115,197,125,110,168,139]
Appendix 3 – In-Memory Data Structure
Using the file illustrated in Appendix 2, the Dictionary produced in FR2 should look something like the illustration below. However, you must ensure that your function can work for any CSV file with a similar structure (such as a file with 5 columns and 100 rows or with 20 columns and 1000 rows).
{
"Pregnancies" : [6,1,8,1,0,5,3,10,2,8,4,10,10],
"Glucose" : [148,85,183,89,137,116,78,115,197,125,110,168,139],
"BloodPressure" : [72,66,64,66,40,74,50,0,70,96,92,74,80],
"SkinThickness" : [35,29,0,23,35,0,32,0,45,0,0,0,0],
"Insulin" : [0,0,0,94,168,0,88,0,543,0,0,0,0],
"BMI" : [33.6,26.6,23.3,28.1,43.1,25.6,31,35.3,30.5,0,37.6,38,27.1],
"DiabetesPedigreeFunction" : [0.627,0.351,0.672,0.167,2.288,0.201, 0.248,0.134,0.158,0.232,0.191,0.537,1.441],
"Age" : [50,31,32,21,33,30,26,29,53,54,30,34,57],
"Outcome" : [1,0,1,0,1,0,1,0,1,1,0,1,0]
}
Appendix 4 – Statistical data based on In-Memory Data Structure
Using the in-memory data structure illustrated in Appendix 3, the List of Tuples produced in FR4 should look something like the illustration below. The full data output is too large to include here and so only some of the data has been included to help illustrate what is required. Remember that different CSV data files will result in different data being stored. The data file you have been provided with does not include any of the data shown below. Don’t be tempted to simply copy the result below into your Jupyter Notebook.
[
("Pregnancies", "Glucose", 0.337),
("Pregnancies", "BloodPressure", -0.0025),
("Pregnancies", "SkinThickness", -0.7481),
("Pregnancies", "Insulin", -0.4772),
("Pregnancies", "BMI", -0.2313),
("Pregnancies", "DiabetesPedigreeFunction", -0.0872),
("Pregnancies", "Age", 0.3428),
("Pregnancies", "Outcome", 0.0167),
("Glucose", "Pregnancies", 0.337),
("Glucose", "BloodPressure", 0.1429),
("Glucose", "SkinThickness", -0.0028),
("Glucose", "Insulin", 0.4304),
("Glucose", "BMI", 0.0584),
("Glucose", "DiabetesPedigreeFunction", 0.2192),
("Glucose", "Age", 0.5328),
("Glucose", "Outcome", 0.5465),
+++++++ More data would be included here ++++++++
("Outcome", "Pregnancies", 0.0167),
("Outcome", "Glucose", 0.5465),
("Outcome", "BloodPressure", 0.0755),
("Outcome", "SkinThickness", 0.3585),
("Outcome", "Insulin", 0.3355),
("Outcome", "BMI", -0.0768),
("Outcome", "DiabetesPedigreeFunction", 0.2185),
("Outcome", "Age", 0.314)
]
Appendix 5 – Output table for Statistics
Using the output from the function produced in FR4, the following table outputs a subset of the available columns (as defined by the function parameter) using the border character * and padding within the cells to ensure the table is readable:
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
代做ceng0013 design of a pro...
2024-11-13
代做mech4880 refrigeration a...
2024-11-13
代做mcd1350: media studies a...
2024-11-13
代写fint b338f (autumn 2024)...
2024-11-13
代做engd3000 design of tunab...
2024-11-13
代做n1611 financial economet...
2024-11-13
代做econ 2331: economic and ...
2024-11-13
代做cs770/870 assignment 8代...
2024-11-13
代写amath 481/581 autumn qua...
2024-11-13
代做ccc8013 the process of s...
2024-11-13
代写csit040 – modern comput...
2024-11-13
代写econ 2070: introduc2on t...
2024-11-13
代写cct260, project 2 person...
2024-11-13
热点标签
mktg2509
csci 2600
38170
lng302
csse3010
phas3226
77938
arch1162
engn4536/engn6536
acx5903
comp151101
phl245
cse12
comp9312
stat3016/6016
phas0038
comp2140
6qqmb312
xjco3011
rest0005
ematm0051
5qqmn219
lubs5062m
eee8155
cege0100
eap033
artd1109
mat246
etc3430
ecmm462
mis102
inft6800
ddes9903
comp6521
comp9517
comp3331/9331
comp4337
comp6008
comp9414
bu.231.790.81
man00150m
csb352h
math1041
eengm4100
isys1002
08
6057cem
mktg3504
mthm036
mtrx1701
mth3241
eeee3086
cmp-7038b
cmp-7000a
ints4010
econ2151
infs5710
fins5516
fin3309
fins5510
gsoe9340
math2007
math2036
soee5010
mark3088
infs3605
elec9714
comp2271
ma214
comp2211
infs3604
600426
sit254
acct3091
bbt405
msin0116
com107/com113
mark5826
sit120
comp9021
eco2101
eeen40700
cs253
ece3114
ecmm447
chns3000
math377
itd102
comp9444
comp(2041|9044)
econ0060
econ7230
mgt001371
ecs-323
cs6250
mgdi60012
mdia2012
comm221001
comm5000
ma1008
engl642
econ241
com333
math367
mis201
nbs-7041x
meek16104
econ2003
comm1190
mbas902
comp-1027
dpst1091
comp7315
eppd1033
m06
ee3025
msci231
bb113/bbs1063
fc709
comp3425
comp9417
econ42915
cb9101
math1102e
chme0017
fc307
mkt60104
5522usst
litr1-uc6201.200
ee1102
cosc2803
math39512
omp9727
int2067/int5051
bsb151
mgt253
fc021
babs2202
mis2002s
phya21
18-213
cege0012
mdia1002
math38032
mech5125
07
cisc102
mgx3110
cs240
11175
fin3020s
eco3420
ictten622
comp9727
cpt111
de114102d
mgm320h5s
bafi1019
math21112
efim20036
mn-3503
fins5568
110.807
bcpm000028
info6030
bma0092
bcpm0054
math20212
ce335
cs365
cenv6141
ftec5580
math2010
ec3450
comm1170
ecmt1010
csci-ua.0480-003
econ12-200
ib3960
ectb60h3f
cs247—assignment
tk3163
ics3u
ib3j80
comp20008
comp9334
eppd1063
acct2343
cct109
isys1055/3412
math350-real
math2014
eec180
stat141b
econ2101
msinm014/msing014/msing014b
fit2004
comp643
bu1002
cm2030
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!