Found 1,551 repositories(showing 30)
ManojKumarPatnaik
A list of practical projects that anyone can solve in any programming language (See solutions). These projects are divided into multiple categories, and each category has its own folder. To get started, simply fork this repo. CONTRIBUTING See ways of contributing to this repo. You can contribute solutions (will be published in this repo) to existing problems, add new projects, or remove existing ones. Make sure you follow all instructions properly. Solutions You can find implementations of these projects in many other languages by other users in this repo. Credits Problems are motivated by the ones shared at: Martyr2’s Mega Project List Rosetta Code Table of Contents Numbers Classic Algorithms Graph Data Structures Text Networking Classes Threading Web Files Databases Graphics and Multimedia Security Numbers Find PI to the Nth Digit - Enter a number and have the program generate PI up to that many decimal places. Keep a limit to how far the program will go. Find e to the Nth Digit - Just like the previous problem, but with e instead of PI. Enter a number and have the program generate e up to that many decimal places. Keep a limit to how far the program will go. Fibonacci Sequence - Enter a number and have the program generate the Fibonacci sequence to that number or to the Nth number. Prime Factorization - Have the user enter a number and find all Prime Factors (if there are any) and display them. Next Prime Number - Have the program find prime numbers until the user chooses to stop asking for the next one. Find Cost of Tile to Cover W x H Floor - Calculate the total cost of the tile it would take to cover a floor plan of width and height, using a cost entered by the user. Mortgage Calculator - Calculate the monthly payments of a fixed-term mortgage over given Nth terms at a given interest rate. Also, figure out how long it will take the user to pay back the loan. For added complexity, add an option for users to select the compounding interval (Monthly, Weekly, Daily, Continually). Change Return Program - The user enters a cost and then the amount of money given. The program will figure out the change and the number of quarters, dimes, nickels, pennies needed for the change. Binary to Decimal and Back Converter - Develop a converter to convert a decimal number to binary or a binary number to its decimal equivalent. Calculator - A simple calculator to do basic operators. Make it a scientific calculator for added complexity. Unit Converter (temp, currency, volume, mass, and more) - Converts various units between one another. The user enters the type of unit being entered, the type of unit they want to convert to, and then the value. The program will then make the conversion. Alarm Clock - A simple clock where it plays a sound after X number of minutes/seconds or at a particular time. Distance Between Two Cities - Calculates the distance between two cities and allows the user to specify a unit of distance. This program may require finding coordinates for the cities like latitude and longitude. Credit Card Validator - Takes in a credit card number from a common credit card vendor (Visa, MasterCard, American Express, Discoverer) and validates it to make sure that it is a valid number (look into how credit cards use a checksum). Tax Calculator - Asks the user to enter a cost and either a country or state tax. It then returns the tax plus the total cost with tax. Factorial Finder - The Factorial of a positive integer, n, is defined as the product of the sequence n, n-1, n-2, ...1, and the factorial of zero, 0, is defined as being 1. Solve this using both loops and recursion. Complex Number Algebra - Show addition, multiplication, negation, and inversion of complex numbers in separate functions. (Subtraction and division operations can be made with pairs of these operations.) Print the results for each operation tested. Happy Numbers - A happy number is defined by the following process. Starting with any positive integer, replace the number by the sum of the squares of its digits, and repeat the process until the number equals 1 (where it will stay), or it loops endlessly in a cycle which does not include 1. Those numbers for which this process ends in 1 are happy numbers, while those that do not end in 1 are unhappy numbers. Display an example of your output here. Find the first 8 happy numbers. Number Names - Show how to spell out a number in English. You can use a preexisting implementation or roll your own, but you should support inputs up to at least one million (or the maximum value of your language's default bounded integer type if that's less). Optional: Support for inputs other than positive integers (like zero, negative integers, and floating-point numbers). Coin Flip Simulation - Write some code that simulates flipping a single coin however many times the user decides. The code should record the outcomes and count the number of tails and heads. Limit Calculator - Ask the user to enter f(x) and the limit value, then return the value of the limit statement Optional: Make the calculator capable of supporting infinite limits. Fast Exponentiation - Ask the user to enter 2 integers a and b and output a^b (i.e. pow(a,b)) in O(LG n) time complexity. Classic Algorithms Collatz Conjecture - Start with a number n > 1. Find the number of steps it takes to reach one using the following process: If n is even, divide it by 2. If n is odd, multiply it by 3 and add 1. Sorting - Implement two types of sorting algorithms: Merge sort and bubble sort. Closest pair problem - The closest pair of points problem or closest pair problem is a problem of computational geometry: given n points in metric space, find a pair of points with the smallest distance between them. Sieve of Eratosthenes - The sieve of Eratosthenes is one of the most efficient ways to find all of the smaller primes (below 10 million or so). Graph Graph from links - Create a program that will create a graph or network from a series of links. Eulerian Path - Create a program that will take as an input a graph and output either an Eulerian path or an Eulerian cycle, or state that it is not possible. An Eulerian path starts at one node and traverses every edge of a graph through every node and finishes at another node. An Eulerian cycle is an eulerian Path that starts and finishes at the same node. Connected Graph - Create a program that takes a graph as an input and outputs whether every node is connected or not. Dijkstra’s Algorithm - Create a program that finds the shortest path through a graph using its edges. Minimum Spanning Tree - Create a program that takes a connected, undirected graph with weights and outputs the minimum spanning tree of the graph i.e., a subgraph that is a tree, contains all the vertices, and the sum of its weights is the least possible. Data Structures Inverted index - An Inverted Index is a data structure used to create full-text search. Given a set of text files, implement a program to create an inverted index. Also, create a user interface to do a search using that inverted index which returns a list of files that contain the query term/terms. The search index can be in memory. Text Fizz Buzz - Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”. Reverse a String - Enter a string and the program will reverse it and print it out. Pig Latin - Pig Latin is a game of alterations played in the English language game. To create the Pig Latin form of an English word the initial consonant sound is transposed to the end of the word and an ay is affixed (Ex.: "banana" would yield anana-bay). Read Wikipedia for more information on rules. Count Vowels - Enter a string and the program counts the number of vowels in the text. For added complexity have it report a sum of each vowel found. Check if Palindrome - Checks if the string entered by the user is a palindrome. That is that it reads the same forwards as backward like “racecar” Count Words in a String - Counts the number of individual words in a string. For added complexity read these strings in from a text file and generate a summary. Text Editor - Notepad-style application that can open, edit, and save text documents. Optional: Add syntax highlighting and other features. RSS Feed Creator - Given a link to RSS/Atom Feed, get all posts and display them. Quote Tracker (market symbols etc) - A program that can go out and check the current value of stocks for a list of symbols entered by the user. The user can set how often the stocks are checked. For CLI, show whether the stock has moved up or down. Optional: If GUI, the program can show green up and red down arrows to show which direction the stock value has moved. Guestbook / Journal - A simple application that allows people to add comments or write journal entries. It can allow comments or not and timestamps for all entries. Could also be made into a shoutbox. Optional: Deploy it on Google App Engine or Heroku or any other PaaS (if possible, of course). Vigenere / Vernam / Ceasar Ciphers - Functions for encrypting and decrypting data messages. Then send them to a friend. Regex Query Tool - A tool that allows the user to enter a text string and then in a separate control enter a regex pattern. It will run the regular expression against the source text and return any matches or flag errors in the regular expression. Networking FTP Program - A file transfer program that can transfer files back and forth from a remote web sever. Bandwidth Monitor - A small utility program that tracks how much data you have uploaded and downloaded from the net during the course of your current online session. See if you can find out what periods of the day you use more and less and generate a report or graph that shows it. Port Scanner - Enter an IP address and a port range where the program will then attempt to find open ports on the given computer by connecting to each of them. On any successful connections mark the port as open. Mail Checker (POP3 / IMAP) - The user enters various account information include web server and IP, protocol type (POP3 or IMAP), and the application will check for email at a given interval. Country from IP Lookup - Enter an IP address and find the country that IP is registered in. Optional: Find the Ip automatically. Whois Search Tool - Enter an IP or host address and have it look it up through whois and return the results to you. Site Checker with Time Scheduling - An application that attempts to connect to a website or server every so many minute or a given time and check if it is up. If it is down, it will notify you by email or by posting a notice on the screen. Classes Product Inventory Project - Create an application that manages an inventory of products. Create a product class that has a price, id, and quantity on hand. Then create an inventory class that keeps track of various products and can sum up the inventory value. Airline / Hotel Reservation System - Create a reservation system that books airline seats or hotel rooms. It charges various rates for particular sections of the plane or hotel. For example, first class is going to cost more than a coach. Hotel rooms have penthouse suites which cost more. Keep track of when rooms will be available and can be scheduled. Company Manager - Create a hierarchy of classes - abstract class Employee and subclasses HourlyEmployee, SalariedEmployee, Manager, and Executive. Everyone's pay is calculated differently, research a bit about it. After you've established an employee hierarchy, create a Company class that allows you to manage the employees. You should be able to hire, fire, and raise employees. Bank Account Manager - Create a class called Account which will be an abstract class for three other classes called CheckingAccount, SavingsAccount, and BusinessAccount. Manage credits and debits from these accounts through an ATM-style program. Patient / Doctor Scheduler - Create a patient class and a doctor class. Have a doctor that can handle multiple patients and set up a scheduling program where a doctor can only handle 16 patients during an 8 hr workday. Recipe Creator and Manager - Create a recipe class with ingredients and put them in a recipe manager program that organizes them into categories like desserts, main courses, or by ingredients like chicken, beef, soups, pies, etc. Image Gallery - Create an image abstract class and then a class that inherits from it for each image type. Put them in a program that displays them in a gallery-style format for viewing. Shape Area and Perimeter Classes - Create an abstract class called Shape and then inherit from it other shapes like diamond, rectangle, circle, triangle, etc. Then have each class override the area and perimeter functionality to handle each shape type. Flower Shop Ordering To Go - Create a flower shop application that deals in flower objects and use those flower objects in a bouquet object which can then be sold. Keep track of the number of objects and when you may need to order more. Family Tree Creator - Create a class called Person which will have a name, when they were born, and when (and if) they died. Allow the user to create these Person classes and put them into a family tree structure. Print out the tree to the screen. Threading Create A Progress Bar for Downloads - Create a progress bar for applications that can keep track of a download in progress. The progress bar will be on a separate thread and will communicate with the main thread using delegates. Bulk Thumbnail Creator - Picture processing can take a bit of time for some transformations. Especially if the image is large. Create an image program that can take hundreds of images and converts them to a specified size in the background thread while you do other things. For added complexity, have one thread handling re-sizing, have another bulk renaming of thumbnails, etc. Web Page Scraper - Create an application that connects to a site and pulls out all links, or images, and saves them to a list. Optional: Organize the indexed content and don’t allow duplicates. Have it put the results into an easily searchable index file. Online White Board - Create an application that allows you to draw pictures, write notes and use various colors to flesh out ideas for projects. Optional: Add a feature to invite friends to collaborate on a whiteboard online. Get Atomic Time from Internet Clock - This program will get the true atomic time from an atomic time clock on the Internet. Use any one of the atomic clocks returned by a simple Google search. Fetch Current Weather - Get the current weather for a given zip/postal code. Optional: Try locating the user automatically. Scheduled Auto Login and Action - Make an application that logs into a given site on a schedule and invokes a certain action and then logs out. This can be useful for checking webmail, posting regular content, or getting info for other applications and saving it to your computer. E-Card Generator - Make a site that allows people to generate their own little e-cards and send them to other people. Do not use Flash. Use a picture library and perhaps insightful mottos or quotes. Content Management System - Create a content management system (CMS) like Joomla, Drupal, PHP Nuke, etc. Start small. Optional: Allow for the addition of modules/addons. Web Board (Forum) - Create a forum for you and your buddies to post, administer and share thoughts and ideas. CAPTCHA Maker - Ever see those images with letters numbers when you signup for a service and then ask you to enter what you see? It keeps web bots from automatically signing up and spamming. Try creating one yourself for online forms. Files Quiz Maker - Make an application that takes various questions from a file, picked randomly, and puts together a quiz for students. Each quiz can be different and then reads a key to grade the quizzes. Sort Excel/CSV File Utility - Reads a file of records, sorts them, and then writes them back to the file. Allow the user to choose various sort style and sorting based on a particular field. Create Zip File Maker - The user enters various files from different directories and the program zips them up into a zip file. Optional: Apply actual compression to the files. Start with Huffman Algorithm. PDF Generator - An application that can read in a text file, HTML file, or some other file and generates a PDF file out of it. Great for a web-based service where the user uploads the file and the program returns a PDF of the file. Optional: Deploy on GAE or Heroku if possible. Mp3 Tagger - Modify and add ID3v1 tags to MP3 files. See if you can also add in the album art into the MP3 file’s header as well as other ID3v2 tags. Code Snippet Manager - Another utility program that allows coders to put in functions, classes, or other tidbits to save for use later. Organized by the type of snippet or language the coder can quickly lookup code. Optional: For extra practice try adding syntax highlighting based on the language. Databases SQL Query Analyzer - A utility application in which a user can enter a query and have it run against a local database and look for ways to make it more efficient. Remote SQL Tool - A utility that can execute queries on remote servers from your local computer across the Internet. It should take in a remote host, user name, and password, run the query and return the results. Report Generator - Create a utility that generates a report based on some tables in a database. Generates sales reports based on the order/order details tables or sums up the day's current database activity. Event Scheduler and Calendar - Make an application that allows the user to enter a date and time of an event, event notes, and then schedule those events on a calendar. The user can then browse the calendar or search the calendar for specific events. Optional: Allow the application to create re-occurrence events that reoccur every day, week, month, year, etc. Budget Tracker - Write an application that keeps track of a household’s budget. The user can add expenses, income, and recurring costs to find out how much they are saving or losing over a period of time. Optional: Allow the user to specify a date range and see the net flow of money in and out of the house budget for that time period. TV Show Tracker - Got a favorite show you don’t want to miss? Don’t have a PVR or want to be able to find the show to then PVR it later? Make an application that can search various online TV Guide sites, locate the shows/times/channels and add them to a database application. The database/website then can send you email reminders that a show is about to start and which channel it will be on. Travel Planner System - Make a system that allows users to put together their own little travel itinerary and keep track of the airline/hotel arrangements, points of interest, budget, and schedule. Graphics and Multimedia Slide Show - Make an application that shows various pictures in a slide show format. Optional: Try adding various effects like fade in/out, star wipe, and window blinds transitions. Stream Video from Online - Try to create your own online streaming video player. Mp3 Player - A simple program for playing your favorite music files. Add features you think are missing from your favorite music player. Watermarking Application - Have some pictures you want copyright protected? Add your own logo or text lightly across the background so that no one can simply steal your graphics off your site. Make a program that will add this watermark to the picture. Optional: Use threading to process multiple images simultaneously. Turtle Graphics - This is a common project where you create a floor of 20 x 20 squares. Using various commands you tell a turtle to draw a line on the floor. You have moved forward, left or right, lift or drop the pen, etc. Do a search online for "Turtle Graphics" for more information. Optional: Allow the program to read in the list of commands from a file. GIF Creator A program that puts together multiple images (PNGs, JPGs, TIFFs) to make a smooth GIF that can be exported. Optional: Make the program convert small video files to GIFs as well. Security Caesar cipher - Implement a Caesar cipher, both encoding, and decoding. The key is an integer from 1 to 25. This cipher rotates the letters of the alphabet (A to Z). The encoding replaces each letter with the 1st to 25th next letter in the alphabet (wrapping Z to A). So key 2 encrypts "HI" to "JK", but key 20 encrypts "HI" to "BC". This simple "monoalphabetic substitution cipher" provides almost no security, because an attacker who has the encoded message can either use frequency analysis to guess the key, or just try all 25 keys.
miksrv
Arduino Weather Station is an automated weather monitoring project built on Arduino for collecting environmental data, featuring an API (PHP + MySQL + CodeIgniter) and a web interface (Next.js + Redux RTK) for real-time and historical weather data analysis. Please give the project a star :)
项目作者:田睿 本科毕业于北京航空航天大学,现在读研,GNSS领域入门两年。 请注意! 该项目原始路径为:E:\Thesis\RTKLIB_Workspace\WorkSpace\For_Thesis\For_Thesis 项目名称为For_Thesis(即上传的文件夹中包含的内容) 在笔者Win10系统、VS2017上成功运行,亲测可用!!! 请务必仔细阅读此文件!!! ==============程序主要功能============== 本程序的主要功能是基于GGOS对流层产品进行对流层延迟解算,还可用于rtklib开源项目的二次开发及改进。 总之,该程序的目的是方便其他使用rtklib开源项目的GNSS研究者,提高其科研效率。 ==============程序基本信息============== 本程序基于rtklib2.4.3 b33版本进行二次开发,采用C语言编写,并在Win10、Visual Studio 2017平台上完成开发及调试,项目路径为: E:\Thesis\RTKLIB_Workspace\WorkSpace\For_Thesis\For_Thesis 相比于原项目,主要改动点为: 1.增加了Demo_Tropo.c文件(最主要的改进)。 2.增加了测试用的main.cpp文件,作为程序入口,应注意!主程序文件必须为cpp文件,不能使用c文件。 3.在rtklib.h 文件中增加了部分函数的声明。 4.在Windows系统下,采用VS2017编译rtklib项目会遇到各种问题。对此,对原项目进行了必要的改动, 如增加了unistd.h文件、去掉main函数的rnx2rtkp.c文件等,具体编译方法详见后文。 5.增加了数据文件orography_ell.txt等,应注意!数据文件必须放在项目目录内,因为主程序中使用的是相对路径。 ==============Windows下采用Visual Studio IDE的项目编译方法============== Windows下常用的C/C++ IDE即Visual Studio,功能丰富全面,适合GNSS研究者使用。 当然,对计算机比较精通的研究者可以采用linux系统,不使用IDE,采用cmake等工具进行编译。事实上,这样做更适合rtklib的二次开发。 然而,对于刚接触GNSS领域的硕/博研究生而言,学习linux系统及cmake等编译工具,无疑会大大拉长学习周期, 耽误宝贵的科研时间,降低科研效率。对此,笔者深有体会!因此,笔者坚持在windows系统下用Visual Studio IDE开发此项目, 遇到的编译问题很多,可参考如下博客解决: https://blog.csdn.net/wuwuku123/article/details/100030177 https://blog.csdn.net/sd28you28/article/details/82911273 https://blog.csdn.net/zhangtao_heu/article/details/79536427 https://blog.csdn.net/qq_35363018/article/details/101317869 https://blog.csdn.net/baixia3551/article/details/101085788?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase https://blog.csdn.net/WalterBrien/article/details/80754215 此外,笔者在编译过程中还遇到一些没有解决的问题,在此总结发布以飨读者: 要通过Project——Manage NuGet Packages添加pthread、dirent等 一定记得切换为64位 注意预编译器添加的是WIN32而非Win32!!! 预编译器中记得添加 WIN32 _DEBUG _CONSOLE _CRT_SECURE_NO_WARNINGS _WINSOCK_DEPRECATED_NO_WARNINGS ENAGLO DLL 主程序必须是.cpp文件!!! 记得添加unistd.h文件 经上述操作后仍出现: unresolved external symbol showmsg等错误 经测试,发现下述方法可行: 将RTKLIB-rtklib_2.4.3\app\rnx2rtkp文件夹下的rnx2rtkp.c文件放到项目的src文件夹下并加入到工程,并去掉其中的主程序(也可以把这个当做主程序)。 ==============数据源============== 所用数据均可在网站https://vmf.geo.tuwien.ac.at/上下载。 应注意!VMFG_FC产品必须注册账户后才能获取,注册方法即通过英文邮件向相关管理人员提出申请,管理人员会通过邮件提供给你一个账户。 ==============开发参考============== 参考了官方的matlab程序vmf1_grid.m及vmf1_ht.m 参考了如下文献: 《GGOS对流层延迟产品精度分析及在PPP中的应用》 《不同全球对流层天顶延迟产品在中国区域的比较》 《Troposphere mapping functions for GPS and VLBI from ECMWF operational analysis data》 《Implementation and testing of the gridded Vienna Mapping Function 1 (VMF1)》 《Generation and Assessment of VMF1-Type Grids Using North-American Numerical Weather Models》 《Discussion and recommendations about the height correction for a priori zenith hydrostatic delays derived from ECMWF data》 还有一些官方网站上提供的资料(请参见官网) ==============关于程序结果的一点讨论============== 经测试,本项目运行结果与官方matlab程序有一定出入,差距在厘米级。 经检查,笔者自认为这并非是编程的问题,而是必然存在的数值计算误差,因为C程序与matlab程序的数值精度不同。 笔者测试的结果是本程序更接近IGS发布的天顶对流层延迟数据。 也可采用C与matlab联合编程应用GGOS产品,但运行较慢,且移植性不好。 如有发现程序中问题的,欢迎在GitHub库上及时发布新版本。 ==============重要声明============== 鉴于笔者入门不久,水平有限,有所疏漏在所难免。 该项目仅供研究者参考,并非TU Wien发布的官方代码,可能存在笔者尚未发现的未知错误。 如各位研究者发现问题,欢迎在GitHub上发布修正版本。非常欢迎各位研究者对本项目查漏补缺,系统测试! 在该项目尚未成熟之前,建议各位研究者审慎地考虑在科研中到底是应用本项目,还是使用C与matlab联合编程,后者虽慢,但毕竟是官方反复验证过的matlab代码。 当然,该项目注释详尽,参考价值较高,可作为学习GGOS产品应用的重要参考! 在此开源发布,权作抛砖引玉,期冀各位研究者对其进一步改进与完善!
paulknewton
Raspberry Pi project to monitor water depth in a rainwater tank using a HC-SR04 ultrasound sensor, and cross reference these to weather conditions. Logging and trend analysis via the ThingSpeak IoT platform and the python data libraries (pandas, numpy, matplotlib).
Shashivadan
FireTrack is an innovative project aimed at revolutionizing wildfire prediction and prevention through advanced technology and data analytics. By leveraging satellite imagery, weather data, and machine learning algorithms, FireTrack provides real-time monitoring and predictive analysis of fire-prone areas.
OmdenaAI
This project utilizes machine learning to predict extreme weather events and analyze traffic congestion in Southeast Asia. The repository includes data analysis, model training, and visualization scripts to forecast weather conditions for the next 30 days and enhance transportation efficiency.
prasadpuchakayala
Agricultural Crop Prediction Analysis project utilizes machine learning algorithms to forecast crop yields based on historical data, weather patterns, and soil conditions, aiding farmers in decision-making and resource allocation for optimal agricultural productivity.
QXL4515
Rainfall forecasting is a very important problem in the field of hydrology and meteorology. Especially, short-term rainfall forecasting is closely related to resident's daily life. For example, forecasting the situation of stagnant water on the road, providing weather guidance for the flight, and providing short-term heavy rainfall warning in the city.However, existing solutions achieve low prediction accuracy for short-term rainfall forecasting. Numerical forecasting models can achieve overall accuracy but always perform worth in some short-term conditions. Data-driven approaches always neglect the influences of physical factors in upstream or downstream regions, which lead to the forecasting accuracy fluctuates in different areas. Rainfall forecasting is affected by many factors, such as high-altitude physical factors and surface factors.High-altitude physical factors play important roles in the movement of rainfall system. Surface factors on the Earth also cause different rainfall. Difference surface factors represent different factors between region and surrounding area. Therefore, it is very reasonable to forecast rainfall by studying the relations between high-altitude physical factors, surface factors and rainfall. In this project, a Dynamic Regional Combined short-term rainfall forecasting model (DRCF) using Multi-Layer Perceptron (MLP) is proposed. The input of the model includes five high-altitude factors and seven different surface factors. In summary, we have addressed a series of techniques challenges in this work, and the central contributions are summarized as follows: 1.Principle Component Analysis (PCA) is used to determined the input of of MPL and a special greedy algorithm is proposed to determine the suitable structure of MLP. 2.The relation between forecasting area and surrounding area is established using MPL. Based on the relation, a dynamic regional combined rainfall forecasting model is proposed. The strategy of dynamically adjusting area is also enhanced to effectively improve prediction accuracy. 3.The model is finally validated by a large number of meteorological site data, including 56 sites, and these sites are distributed in all parts of China.
wpbSabi
These weather data projects could be very useful for gardeners. The first R script shows how to obtain and visualize information about the average first/last freeze in your US zipcode. The next analysis on precipitation for your zipcode shares insights on when you can expect the soil saturation to be ready for planting.
conorheffron
Basic Data Analysis Projects: European Crime 2021 Dataset Analysis + Dublin Bikes & Weather Analysis
FarhaKousar1601
This project is a comprehensive data analysis and visualization dashboard created using Power BI It explores road accident data to provide valuable insights into accident patterns based on severity, weather, time, road types, vehicle types, and more.
karami-mehdi
Machine learning analysis for predicting solar power generation using weather and sensor data from solar plants. This project leverages historical data and machine learning to improve the efficiency of renewable energy systems by optimizing solar energy forecasting.
janeminmin
1> Background information Bluebikes is Metro Boston’s public bike share program, with more than 1800 bikes at over 200 stations across Boston and nearby areas. The bikes sharing program launched in 2011. The program aimed for individuals to use it for short-term basis for a price. It allows individuals to borrow a bike from a dock station after using it, which makes it ideal for one-way trips. The City of Boston is committed to providing bike share as a part of the public transportation system. However, to build a transport system that encourages bicycling, it is important to build knowledge about the current bicycle flows, and what factors are involved in the decision-making of potential bicyclists when choosing whether to use the bicycle. It is logical to make hypotheses that age and gender, bicycle infrastructure, safety perception are possible determinants of bicycling. On the short-term perspective, it has been shown that weather plays an important role whether to choose the bicycle. 2> Data collection The Bluebikes collects and provides system data to the public. The datasets used in the project can be download through this link (https://www.bluebikes.com/system-data). Based on this time series dataset (start from 2017-01-01 00:00:00 to 2019-03-31 23:00:00), we could have the information includes: Trip duration, start time and data, stop time and data, start station name and id, end station name and id, bike id, user type (casual or subscribed), birth year, gender. Besides, any trips that were below 60 seconds in length is considered as potentially false starts, which is already removed in the datasets. The number of bicycles used during a particular time period, varies over time based on several factors, including the current weather conditions, time of the day, time of the year and the current interest of the biker to use the bicycle as a transport mode. The current interest is different between subscribed users and casual users, so we should analyze them separately. Factors such as season, day of a week, month, hour, and if a holiday can be extracted from the date and time column in the datasets. Since we would analyze the hourly bicycle rental flow, we need hourly weather conditions data from 2017-01-01 00:00:00 to 2019-03-31 23:00:00 to complete our regression model of prediction. The weather data used in the project is scrapped using python selenium from Logan airport station (42.38 °N, 71.04 °W) webpage (https://www.wunderground.com/history/daily/us/ma/boston/KBOS/date/2019-7-15) maintained by weather underground website. The hourly weather observations include time, temperature, dew point, humidity, wind, wind speed, wind gust, pressure, precipitation, precipitation accumulated, condition. 3> The problem The aims of the project are to gain insight of the factors that could give short-term perspective of bicycle flows in Boston. It also aimed to investigate the how busy each station is, the division of bicycle trip direction and duration of the usage of a busy station and the mean flows variation within a day or during that period. The addition to the factors included in the regression model, there also exist other factors than influence how the bicycle flows vary over longer periods time. For example, general tendency to use the bicycle. Therefore, there is potential to improve the regression model accuracy by incorporating a long-term trend estimate taken over the time series of bicycle usage. Then the result from the machine learning algorithm-based regression model should be compared with the time series forecasting-based models. 4> Possible solutions Data preprocessing/Exploration and variable selection: date approximation manipulation, correlation analysis among variables, merging data, scrubbing for duplicate data, verifying errors, interpolation for missing values, handling outliers and skewness, binning low frequent levels, encoding categorical variables. Data visualization: split number of bike usage by subscribed/casual to build time series; build heatmap to present how busy is each station and locate the busiest station in the busiest period of a busy day; using boxplot and histogram to check outliers and determine appropriate data transformation, using weather condition text to build word cloud. Time series trend curve estimates: two possible way we considered are fitting polynomials of various degrees to the data points in the time series or by using time series decomposition functions and forecast functions to extract and forecast. We would emphasize on the importance to generate trend curve estimates that do not follow the seasonal variations: the seasonal variations should be captured explicitly by the input weather related variables in the regression model. Prediction/regression/time series forecasting: It is possible to build up multilayer perceptron neural network regressor to build up models and give prediction based on all variables of data, time and weather. However, considering the interpretability of model, we prefer to build regression models based on machine learning algorithms (like random forest or SVM) respectively for subscribed/casual users. Then the regressor would be combined with trend curve extracted and forecasted by ARIMA, and then comparing with the result of time series forecasting by STL (Seasonal and Trend decomposition using Loess) with multiple seasonal periods and the result of TBATS (Trigonometric Seasonal, Box-Cox Transformation, ARMA residuals, Trend and Seasonality).
naikshrihari
The project aims to analyze the Energy Consumption Patterns and it's relationship with socio-demographic and weather indicators for European cities like London, post the installation of Smart Energy Meters over a period of 30 months. Exploratory Data Analysis was performed on Tableau and Python. Data Preprocessing was done using Spark and a variety of Machine Learning Algorithms were utilized to perform Time Series Forecasting.
Piruz-m
Smart Weather Station Introduction: Weather plays an important part in our day to day life and activities. Hence, arises the need to monitor and forecast the weather. A lot of TV and radio channels, hence provide data like temperature and humidity, from weather stations installed around the area of interest. However, these stations give only general data and are never area specific. Hence, a home based weather station, would give real time and area specific weather condition reports. This is especially useful for laboratories, where the experiments are affected by any changes in the weather. A lot of personal weather stations are available in the market, but they are expensive to buy and to maintain. From a short market analysis, it is noted that the wireless weather stations are even more expensive. The stations aren’t energy efficient. All of this combined, may prove a huge economic burden, for someone requiring local weather data. Construction: To combat these problems, a personal weather station is built, on the Arduino development board, using cheap sensors, like the DHT 11 temperature and humidity sensor, the HC04 ultrasonic sensor, an ldr, the BMP280 pressure sensor and a thermistor (for detection of fluctuation in temperature). Other components in the project include, Arduino Uno development board, an active buzzer, 1 small and 1 big breadboard, HC05 Bluetooth module, 2 NPN 2n2222 transistors, a potentiometer, a 16x 2LCD display, resistors, 1 capacitor, an active buzzer, jumper cables and wires. Working and applications: When power is supplied to the Arduino Uno, the setup begins sensing data, from the environment. When an object is brought in front of the ultrasonic sensor, first the text(at 97 cm) and then the led(at 47 cm) of the LCD display is turned on. The distance between sensor and object is made more accurate, by feedback, from the DHT11 sensor. The led turns on, with a beep sound, from the active buzzer, which acts as an object detector of sorts as well. The ldr measures the light intensity in LUX, which can be used to derive the overhead cloud cover, etc. and also controls the brightness of led of LCD display, through 4 modes of brightness, according to the ambient light. The thermistor is kept slightly separate, from the general apparatus, via wire extensions, which helps analyze data such as rate of heating/cooling and change in temperature in a certain period of time, of the ambient air, or any other substance. The LCD display, displays basic data such as temperature and relative humidity. The Bluetooth module, is used to transmit data, such as light intensity, distance between object and ultrasonic sensor, air pressure, Change in Temperature, rate of change of temperature, humidity, humiture(Heat index) and dew point to any Bluetooth receiver, such as a mobile phone. A Bluetooth transmitter, connected to the module, can also be used as a remote to turn on the text and led, for some time, when not in range of ultrasonic sensor, or to turn the led off, when in range. On a grander scale, the setup could even be used to automate homes, by controlling the lights, garden sprinklers, indoor thermostat, etc. ,based on the empirical data collected. Conclusion: In conclusion, this setup would prove very useful to any layman- wanting to know about local weather conditions, casual hobbyists- desiring empirical data from various sensors, scientists desiring data to conduct experiments, anyone desiring to automate their home- based on the weather conditions, Students or weather scientists- who want to analyze the local weather trends. All of this, in an economical manner, that’s made energy efficient, through automation, using various cheap sensors, readily available in the market.
riggiobill
# Web Design Homework - Web Visualization Dashboard (Latitude) ## Background Data is more powerful when we share it with others! Let's take what we've learned about HTML and CSS to create a dashboard showing off the analysis we've done.  ### Before You Begin 1. Create a new repository for this project called `Web-Design-Challenge`. **Do not add this homework to an existing repository**. 2. Clone the new repository to your computer. 3. Inside your local git repository, create a directory for the web challenge. Use a folder name to correspond to the challenge: **WebVisualizations**. 4. Add your **html** files to this folder as well as your **assets**, **Resources** and **visualizations** folders. 5. Push the above changes to GitHub or GitLab. 6. Deploy to GitHub pages. ## Latitude - Latitude Analysis Dashboard with Attitude For this homework we'll be creating a visualization dashboard website using visualizations we've created in a past assignment. Specifically, we'll be plotting [weather data](Resources/cities.csv). In building this dashboard, we'll create individual pages for each plot and a means by which we can navigate between them. These pages will contain the visualizations and their corresponding explanations. We'll also have a landing page, a page where we can see a comparison of all of the plots, and another page where we can view the data used to build them. ### Website Requirements For reference, see the ["Screenshots" section](#screenshots) below. The website must consist of 7 pages total, including: * A [landing page](#landing-page) containing: * An explanation of the project. * Links to each visualizations page. There should be a sidebar containing preview images of each plot, and clicking an image should take the user to that visualization. * Four [visualization pages](#visualization-pages), each with: * A descriptive title and heading tag. * The plot/visualization itself for the selected comparison. * A paragraph describing the plot and its significance. * A ["Comparisons" page](#comparisons-page) that: * Contains all of the visualizations on the same page so we can easily visually compare them. * Uses a Bootstrap grid for the visualizations. * The grid must be two visualizations across on screens medium and larger, and 1 across on extra-small and small screens. * A ["Data" page](#data-page) that: * Displays a responsive table containing the data used in the visualizations. * The table must be a bootstrap table component. [Hint](https://getbootstrap.com/docs/4.3/content/tables/#responsive-tables) * The data must come from exporting the `.csv` file as HTML, or converting it to HTML. Try using a tool you already know, pandas. Pandas has a nifty method approprately called `to_html` that allows you to generate a HTML table from a pandas dataframe. See the documentation [here](https://pandas.pydata.org/pandas-docs/version/0.17.0/generated/pandas.DataFrame.to_html.html) The website must, at the top of every page, have a navigation menu that: * Has the name of the site on the left of the nav which allows users to return to the landing page from any page. * Contains a dropdown menu on the right of the navbar named "Plots" that provides a link to each individual visualization page. * Provides two more text links on the right: "Comparisons," which links to the comparisons page, and "Data," which links to the data page. * Is responsive (using media queries). The nav must have similar behavior as the screenshots ["Navigation Menu" section](#navigation-menu) (notice the background color change). Finally, the website must be deployed to GitHub pages. When finished, submit to BootcampSpot the links to 1) the deployed app and 2) the GitHub repository. Ensure your repository has regular commits (i.e. 20+ commits) and a thorough README.md file ### Considerations * You may use the [weather data](Resources/cities.csv) or choose another dataset. Alternatively, you may use the included [cities dataset](Resources/cities.csv) and pull the images from the [assets folder](Resources/assets). * You must use Bootstrap. This includes using the Bootstrap `navbar` component for the header on every page, the bootstrap table component for the data page, and the Bootstrap grid for responsiveness on the comparison page. * You must deploy your website to GitHub pages, with the website working on a live, publicly accessible URL as a result. * Be sure to use a CSS media query for the navigation menu. * Be sure your website works at all window widths/sizes. * Feel free to take some liberty in the visual aspects, but keep the core functionality the same.
Ashwiniu07
Amount of Rainfall prediction is a major issue for the weather department as it is associated with the human’s life and economy. Rainfall is the major cause of natural disasters such as drought and flood which are encountered by the people every year across the world. We report machine learning model for the time-series analysis and forecasting of rainfall at TamilNadu. The Indian meteorological department provides forecasting data required for project.Seasonal ARIMA is the technique applied to model the monthly rainfall at TamilNadu for the duration from January 1990 to December 2017. Using SARIMA model proved the stationarity of the time series flow and evaluated the seasonal correlogram
In this project, I analyzed weather data from the NCEI Global Surface Summary of Day dataset using PySpark in Jupyter Notebook. Tasks included data cleaning, statistical analysis, and forecasting for temperature, wind speed, precipitation, and extreme weather events. The project also predicts future weather patterns for Cincinnati and Florida.
This project focuses on forecasting energy consumption for smart grids using historical energy, weather, GDP, and employment data. It includes data collection, exploratory data analysis, feature engineering, and model training and evaluation.
niloufar86
The goal of this project is to investigate the socioeconomic damages due to extreme events in the USA. Quantifying the relationships between the socioeconomic damages and its influencing factors such as the climate extreme events will enable better estimation of future potential losses/costs. The key steps of this investigation are: Identification of key climate-related statistic from the historical data. These include multivariate events such as floods, droughts, heat index, sustained wind speed, wind-induced peak sea level surge, fires, etc. Development of a stochastic modeling strategy that accounts for correlations across multiple events and multiple locations and simulates risk under changing climate conditions at different scales. Both parametric and non-parametric methods will be used with full uncertainty analysis. Perform a detailed investigation of the impacts of extremes on the key vulnerable sectors. The NOAA storm events database that contains continental scale records of the occurrence of storms (from 1950 - present) and other significant weather phenomena will be used as the baseline for this. Realistic influence diagrams that replicate decision-making and opportunities for action to mitigate risk under climate information will be developed from this historical impacts data.
Kwamb0
Part I - WeatherPy In this example, you’ll be creating a Python script to visualize the weather of 500+ cities across the world of varying distance from the equator. To accomplish this, you’ll be utilizing a simple Python library, the OpenWeatherMap API, and a little common sense to create a representative model of weather across world cities. Your first objective is to build a series of scatter plots to showcase the following relationships: Temperature (F) vs. Latitude Humidity (%) vs. Latitude Cloudiness (%) vs. Latitude Wind Speed (mph) vs. Latitude After each plot add a sentence or too explaining what the code is and analyzing. Your next objective is to run linear regression on each relationship, only this time separating them into Northern Hemisphere (greater than or equal to 0 degrees latitude) and Southern Hemisphere (less than 0 degrees latitude): Northern Hemisphere - Temperature (F) vs. Latitude Southern Hemisphere - Temperature (F) vs. Latitude Northern Hemisphere - Humidity (%) vs. Latitude Southern Hemisphere - Humidity (%) vs. Latitude Northern Hemisphere - Cloudiness (%) vs. Latitude Southern Hemisphere - Cloudiness (%) vs. Latitude Northern Hemisphere - Wind Speed (mph) vs. Latitude Southern Hemisphere - Wind Speed (mph) vs. Latitude After each pair of plots explain what the linear regression is modelling such as any relationships you notice and any other analysis you may have. Your final notebook must: Randomly select at least 500 unique (non-repeat) cities based on latitude and longitude. Perform a weather check on each of the cities using a series of successive API calls. Include a print log of each city as it’s being processed with the city number and city name. Save a CSV of all retrieved data and a PNG image for each scatter plot. Part II - VacationPy Now let’s use your skills in working with weather data to plan future vacations. Use jupyter-gmaps and the Google Places API for this part of the assignment. Note: if you having trouble displaying the maps try running jupyter nbextension enable --py gmaps in your environment and retry. Create a heat map that displays the humidity for every city from the part I of the homework. heatmap Narrow down the DataFrame to find your ideal weather condition. For example: A max temperature lower than 80 degrees but higher than 70. Wind speed less than 10 mph. Zero cloudiness. Drop any rows that don’t contain all three conditions. You want to be sure the weather is ideal. Note: Feel free to adjust to your specifications but be sure to limit the number of rows returned by your API requests to a reasonable number. Using Google Places API to find the first hotel for each city located within 5000 meters of your coordinates. Plot the hotels on top of the humidity heatmap with each pin containing the Hotel Name, City, and Country. hotel map As final considerations: Create a new GitHub repository for this project called API-Challenge (note the kebab-case). Do not add to an existing repo You must complete your analysis using a Jupyter notebook. You must use the Matplotlib or Pandas plotting libraries. For Part I, you must include a written description of three observable trends based on the data. You must use proper labeling of your plots, including aspects like: Plot Titles (with date of analysis) and Axes Labels. For max intensity in the heat map, try setting it to the highest humidity found in the data set. Hints and Considerations The city data you generate is based on random coordinates as well as different query times; as such, your outputs will not be an exact match to the provided starter notebook. You may want to start this assignment by refreshing yourself on the geographic coordinate system. Next, spend the requisite time necessary to study the OpenWeatherMap API. Based on your initial study, you should be able to answer basic questions about the API: Where do you request the API key? Which Weather API in particular will you need? What URL endpoints does it expect? What JSON structure does it respond with? Before you write a line of code, you should be aiming to have a crystal clear understanding of your intended outcome. A starter code for Citipy has been provided. However, if you’re craving an extra challenge, push yourself to learn how it works: citipy Python library. Before you try to incorporate the library into your analysis, start by creating simple test cases outside your main script to confirm that you are using it correctly. Too often, when introduced to a new library, students get bogged down by the most minor of errors – spending hours investigating their entire code – when, in fact, a simple and focused test would have shown their basic utilization of the library was wrong from the start. Don’t let this be you! Part of our expectation in this challenge is that you will use critical thinking skills to understand how and why we’re recommending the tools we are. What is Citipy for? Why would you use it in conjunction with the OpenWeatherMap API? How would you do so? In building your script, pay attention to the cities you are using in your query pool. Are you getting coverage of the full gamut of latitudes and longitudes? Or are you simply choosing 500 cities concentrated in one region of the world? Even if you were a geographic genius, simply rattling 500 cities based on your human selection would create a biased dataset. Be thinking of how you should counter this. (Hint: Consider the full range of latitudes). Once you have computed the linear regression for one chart, the process will be similar for all others. As a bonus, try to create a function that will create these charts based on different parameters. Remember that each coordinate will trigger a separate call to the Google API. If you’re creating your own criteria to plan your vacation, try to reduce the results in your DataFrame to 10 or fewer cities. Lastly, remember – this is a challenging activity. Push yourself! If you complete this task, then you can safely say that you’ve gained a strong mastery of the core foundations of data analytics and it will only go better from here. Good luck!
This Python project reads and analyzes weather data from CSV files using the Pandas library. It involves data cleaning, manipulation, and statistical analysis to uncover trends and insights in weather patterns. The project demonstrates effective data handling techniques and provides a foundation for advanced data analysis tasks
slavadragon1
Project on primitive data analysis from two weather stations in Australia
Hridya2001
Project file for real time weather data pipeline integrating AWS sevices and Snowflakes for data processing, prediction and analysis.
shivam-saraf
In this project i have worked upon the weather forecasting analysis. This project includes data cleaning using Pandas library in Python , data extraction using SQL and data visualization using Power BI.
Sujan-Bhattarai12
A data-driven project to monitor, predict, and visualize flood risks in Nepal using real-time weather, river-level data, and geospatial analysis for early warnings and disaster preparedness.
Ali-hey-0
A robust and modular application for analyzing, forecasting, and visualizing weather time series data. This project leverages modern Python libraries for data manipulation, statistical analysis, time series forecasting, and interactive visualization.
The goal of this project is to scrape a variety of weather forecast resources (NOAA, Wunderground, Weather.com, etc), and build up histories of their weather forecasts for a number of major cities (NYC, Chicago, etc). Once enough data is collected I can release the dataset along with some fairly interesting analysis on the relative accuracies of different weather services at certain time-outlooks (5 hours out, 1 day out, 3 days out, etc).
Abstract: The activities of many primary sectors depend on the weather for production, e.g. farming. The climate is changing rapidly nowadays, which makes the existing weather prediction methods less efficient and more complex to use. We require improved and reliable weather prediction methods. These predictions affect a nation's economy and the lives of people. We are developing a weather analysis and prediction system which can be used in remote areas. This is the main goal of the project. Data analytics and machine learning algorithm linear regression are used to predict the weather i.e, predicting the rainfall. In this project, we are proposing a low-cost and portable solution for weather prediction. Attributes like temperature, wind, sea level, humidity are considered as the data. User will enter current temperature humidity, wind, etc. using this data the model is being trained and a new input data is given for which the model will predict the precipitation value and rainfall (heavy, low, moderate).
mutouyu1124
Time series are one of the most common data types encountered in daily life. Financial prices, weather, home energy usage, and even weight are all examples of data that can be collected at regular intervals. Almost every data scientist will encounter time series in their daily work and learning how to model them is an important skill in the data science toolbox. In this project, I will show two methods to do time series analysis