Search Results
737 results found with an empty search
- Run PostgreSQL Query In PgAdmin
First download and install PgAdmin 4 in our window operating system from: https://www.pgadmin.org/download/pgadmin-4-windows/ Setting up your password when it required at the time of installation: After that run and open it using given the password which you create at the time of installation: After open it looks like that: Now click on "servers" : arrow, at the right corner and it open new dropdown option: Right click on "PostgreSQL 13", many option is open, you need to click on "create database" And after enter your database name click on "save" button, now database is successfully created. Now creating database tables inside this database Database and schema both are created: Now creating tables using given database file or queries : Right click on selected database as per below screenshot and select "CREATE Script", then new window is open, Open after click on CREATE Script: Remove this auto-generaged query for creating database, because database already we have created manually, and write the query here for creating the tables: You will copy table schema for given .sql file or .txt file(which has query for creating and inserting database tabeles): And paste it in this section and run: Now go to the schema and check all tables are created with records: Now test the query: Remove the creating schema query from "query editor", because tables are created and write the query here to test it: Contact us to help any database assignment help, database project help, database homework help at below: PostgreSQL Homework Help SQL Assignment Help MySQL Assignment Help contact@codersarts.com
- Hire Android Developer | CodersArts
CodersArts ( SofStack Technology Solution ) is a Startup and leading Service provider in Android App Development, we build Android App for Every Client and there Business. 1. Now days it is necessary to get your business on app ? there are more than 5 billion people who have subscribes mobile business services. if your business isn’t available on the mobile platform you might lose out on potential customers. 2. How do we develop apps : we implement with complete research and developments wireframes for the design, define the architecture for the app, Test app after its completion, provide actual usability on regular interims. then perform actual device testing taking into account several platforms such as mobile and tablet for uniformity. The last step involves monitoring any issues, testing crashes, optimizing the app and providing solutions. Tools and Technologies : During this app development we careful towards Development process, we make sure that your mobile app interacts with users without any glitches. With careful supervision through reliable technologies. we can deliver a unique an extraordinary mobile app. We use flexible and scalable development platforms that can be updated in future according to the needs of our client. Framework : Android SDK Platform : Windows 10,Linex Versions : Android (Q)10, Android Pie, Android Orio and (Android>Version Kitkat ) Language : Java, Kotlin We have worked on 10+ Apps Example 1. Lost and Found App ( helps two users to track real time location and found him ) 2. Student Scheduler App (Help Teacher to Track progress report of student ) 3. Study App ( this is a leaning app ). #webuild4u #codersArts #HireAndroidDeveloper #AndroidExpertHelp #AndroidProjectHelp #happycoding Hire an android developer to get quick help for all your android app development needs. with the hands-on android assignment help and android project help by Codersarts android expert. You can contact the android programming help expert any time; we will help you overcome all the issues and find the right solution. Want to get help right now? Or Want to know price quote Please send your requirement files at contact@codersarts.com. and you'll get instant reply as soon as requirement receives
- M U T U A L F U N D S A P P
INTRODUCTION : - A mutual fund is an open-end professionally managed investment fund that pools money from many investors to purchase securities. These investors may be retail or institutional in nature. The term is typically used in the United States, Canada, and India, while similar structures across the globe include the SICAV in Europe (‘Investment Company with variable capital') and open-ended investment company (OEIC) in the UK. Mutual funds have advantages and disadvantages compared to direct investing in individual securities. The advantages of mutual funds include economies of scale, diversification, liquidity, and professional management. However, these come with mutual fund fees and expenses. Mutual funds are often classified by their principal investments as money market funds, bond or fixed income funds, stock or equity funds, hybrid funds, or other. Funds may also be categorized as index funds, which are passively managed funds that match the performance of an index, or actively managed funds. Hedge funds are not mutual funds as hedge funds cannot be sold to the general public. Mutual Fund App gives you access to your investments across multiple mutual funds. Investors can schedule transactions, change their default bank. In India the Mutual Fund Industry started in 1963 with the formation of Unit Trust of India (UTI) by an Act of Parliament and functioned under the Regulatory and Administrative control of the Reserve Bank of India mandate, track and manage their portfolio, open a new folio and update FATCA, submit additional purchase, redemption and switch instructions. A single mutual fund may give investors a choice of different combinations of front-end loads, back-end loads and distribution and services fee, by offering several different types of shares, known as share classes. All of them invest in the same portfolio of securities, but each has different expenses and, therefore, different net asset values and different performance results. Some of these share classes may be available only to certain types of investors. Defining the Problem Currently, online mutual funds marketplace doesn’t provide enough information and education about the mutual fund products. Users who have knowledge about mutual funds were unaware about where and how to find a good place to invest their funds, as per their ability. Even if a few of them do, users don’t know where and how they can find places to invest that match their investment capacity. The Goal Based on these problems, they realized their customers need a digital platform that can educate them and provide all the information needed to understand mutual funds. Ideally, the platform will also enable them to easily buy mutual fund products that match their financial goals and of course, where they can monitor their investments. Following that, the goal was to create a product that is user-friendly, not intimidating for beginners, and easy to use and understand by more experienced users — where they can buy and redeem mutual funds easily. Persona To start off, I created a persona that I could come back to throughout my project to guide my design decisions and priorities. Based on my understanding of people who I knew would use this app, I envisioned the ideal user to be thinking about his/her personal finances and want to achieve his/her financial goals. Design Goals Simple and understandable, customer needs to understand how mutual funds can help them grow their money in the app Modern aesthetic-usability, creating a good experience with an aesthetic design yet useful and easy to navigate User Flow In order to scope out the experience, I began to create the user flow to visualize the possible solutions for each scenario. Mapping out the experience helped me figure out where each feature should live within the architecture of the app and help me create the right product story. (The current app flow might be slightly different from what we designed initially, considering user needs and business requirements.) Hand Sketching Based on the user flow and user stories, I needed to pour all of my ideas in a rough black & white hand sketch wireframe. I had to gather around all the requirements in each page and arrange them in such a way to know what kind of information I should put in a page. As you can see there’s a lot of sketches — I like to put down all my thoughts and ideas on paper first. I start by writing down all the information that needs to be included in one page, and then I draw and re-arrange them to place. Sometimes I have to create several drawings to know which one works best. After I’m satisfied with the sketches, I usually put sticky notes to tag the page on my notebook so I don’t forget where I put them. The next phase is creating wireframes. Wireframes I created wireframes based on the sketches that I drew. We decided that the app will have 5 main tabs on the app: Dashboard, Portfolio, Create New Investment, Activity, and My Account. Creating wireframes helped me arrange the interface elements while I focused on the functionality rather than appearances. When presenting wireframes to clients, sometimes they are unable to understand what’s on the page because of its low fidelity and they often are too focused on the action of command buttons. So I created a high fidelity wireframe with click-able prototyping and incorporated some color to show important statuses. It is easier to present to clients a wireframe with clear and detailed information. Inspiration Board Before getting started with the UI, I created a moodboard to learn about different UI patterns and to gather inspiration from other financial apps — both live apps and conceptual designs. User Interface / Visual Design Finally the most fun part of this case study: User Interface! Let me walk you through this. CONCLUSION : - Once the app was released we saw some great reviews for it. Having said that, we’re also aware there’s still room for improvement. Users want more features and more mutual fund products. We’re excited to continue working on the feedback coming in from app users and continue helping them buy mutual funds with ease. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately.
- Python Program To Computes The Cost of a Long‐Distance Phone Call
Description Write a program that computes the cost of a long‐distance phone call The cost of a call is determined according to the following rate schedule. Any call started between 8:00am and 6:00pm, Monday through Friday is billed at a rate of $0.40 per minute. Any call starting before 8:00am or after 6:00pm, Monday through Friday is billed at a rate of $0.25 per minute. Any call started on a Saturday or Sunday is billed at a rate of $0.15 per minute. The input will consist of: 1. The day of the week. Read as one of the following pairs of character values, which are stored in two variables of type char. Valid designation are Mo, Tu, We, Th, Fr, Sa, Su. Be sure to allow the user to use either uppercase or lowercase or a combination of the two. .2. The time the call was started. Input in 24‐hour notation, so the time 1:30 pm is input as 13:30. It will be read as one int then a single char then another int. 3. The length of the call (in minutes) stored in a data type of int. Note – Be sure to prompt the user for all inputs. Checking for input errors is recommended. The output will be the details of the call followed by the calculated cost of the call. Your program should: Have a function to display information about the program Have a function (or functions) to get the input from the user Have a function (or functions) to calculate the cost of the call Have a function to nicely display all the details of the call including the cost Include a loop that lets the user repeat this calculation until the user says she or he is done. Submission All parts of the submission are to be uploaded in Canvas by the due date. Refer to the style guide posted in Canvas! 1. Write and submit the external documentation (see the Style Guide) which should include the pseudo‐code (or flow chart) to describe how your program will operate (pdf format). 2. Write and submit a C++ source code file that implements your solution. Your source code must contain appropriate internal documentation (comments) Your source code must be neatly formatted for readability. Get Solution of this python program then you can contact with us or if you need any help related to python advanced programming then we will also help you with and affordable price: Send Project Request at: contact@codersarts.com
- Build the Server and Front End for a Chat System Using Angular 10
Introduction You are required to build the server and front end for a chat system. The chat system will allow users to communicate with each other in real-time within different groups and channels. Some users will have admin permission to add users to channels and groups, whilst a super admin has access to the entire site. The solution must be implemented using Node.js, Angular, and sockets. Terminology Group A collection of users that have been given permission from a group admin or super admin to be able to be a member of the group. Multiple groups can exist. Each user can exist in multiple groups. Channel Each group will have access to several rooms/channels for the purpose of chatting. The super/group/group assis admin can create the rooms and give/remove permission for existing group member to access them. Architecture A global list of groups is required. A global list of rooms is required for each group. A list of which users are in each group and rooms. Users UserName Email ID Role The system will have users which can have the following additional roles: Super Admin Group Admin Group Assis (Assistant) Super Admin A Super Admin can create users with Group Admin role. A Super Admin can also remove all users. A Super Admin can also upgrade another user to Super Admin role. A Super Admin can also do whatever a group admin can. Group Admin A Group Admin can create groups. A Group Admin also can create channels (subgroups) within groups. A Group Admin can create and or invite users to a channel (if the user has already been created, they will simply be added to the channel). A Group Admin can remove groups, channels, and users from channels. A Group Admin can also allow a user to become a Group Assis of the group. A Group Admin other than a Super Admin cannot create a user with Group Admin role. Group Assis A Group Assis of a group can add or remove users in the group from channels within the group. A Group Assis of a group can also create channels within the group. Group Assis cannot do other operations of the Group Admin role. A user is identified by their username. Initially there is one user called 'super' who is also a Super Admin. A user also has an email address (no emails are sent to the email address). Please use this as existing username in database Only 1 super admin Username: admin Password: admin Email: admin@chatapp.com Role: super admin Additional Task: The first page of the website requires a user to enter their username, which is stored in MongoDB. Once a standard user enters their username the page should display the groups they have been added to and the channels for each group. The user can only access the channels they have been given access to. Once a group and channel combo have been selected the user should be able to begin chatting with other users in that channel. For Super Admin, Group Admin and Group Assis, the page should also display the input forms according to their roles abilities for adding or deleting users, groups and channels, respectively. Selecting a channel should display the channel history A text box should allow for new messages to be sent to the channel. New messages are broadcast to all users currently viewing the channel and added to the history USER AUTHENTICATION You should add support for users entering a password. If the password does not match it should ask the user to login again. MongoDB, Sockets and image support are to be used for storing ALL the user, group, and channel data as well as chat history MongoDB The Node.js server storage use a MongoDB database. The mongo database should store all of the user, group, and channel data as well as chat history. Sockets Sockets will be used to support chat communication in a channel. When the user logs in they can choose from the list of groups they are in. They can then choose a particular channel to communicate in. When they are in a channel the chat history should update as users send messages. The channel should also show in realtime when users join and leave a channel. Image support The chat system should allow users to specify a profile image (i.e. avatar). The profile image should be displayed in the chat history alongside their username for messages that they posted. The chat system should also support sending images as a chat message and will appear to all users viewing the chat. Image storage on the server can be as files in a specified directory, with the path to the file stored in the mongo database. Documentation Documentation of your implementation is required. You will need to provide the following: Describe the organization of your Git repository and how you used it during the development of your solution Description of data structures used in both the client and server sides torepresent the various entities, e.g.: users, groups, channels, etc. Angular architecture: components, services, models, routes. Node server architecture: modules, functions, files, global variables. • A description of how you divided the responsibilities between client and server (you are encouraged to have the server provide a REST API which returns JSON in addition to a static directory) A list of routes, parameters, return values, and purpose in the sever side Describe the details of the interaction between client and server by indicating how the files and global vars in server side will be changed and how the display of each angular component page will be updated. The structure Contact Us to get help in any angular 10 or other version related project assignment help at below contact details: contact@codersarts.com
- Designing and Developing Databases | TraceTogether app
1. INTRODUCTION The Government has progressively built up the digital infrastructure and engineering capabilities as the foundation of our Smart Nation. These enable us to respond decisively and swiftly to the COVID-19 outbreak with a suite of digital tools to help disseminate timely and accurate information to Singaporeans, and to enable our fellow agencies to better manage the crisis. In this individual assignment, we focus on a sample dataset specific to two apps, namely TraceTogether SafeEntry Source: https://www.healthhub.sg/apps/38/tracetogether-app What is the TraceTogether app? A person who has been in contact with someone infected with COVID-19 has a higher chance of being infected. When the person exposed can be identified through contact tracing, he or she can get adequate care and treatment. Identifying those who have been exposed involves interviewing the person infected. The person infected recounts their movements and all the people they have been in contact with before and after testing positive for COVID-19. TraceTogether is an app that is designed to supplement current contact tracing efforts. It works by exchanging short-distance Bluetooth signals between phones to detect other participating TraceTogether users in close proximity. Records of such encounters are stored locally on each user’s phone. If a user is interviewed by MOH as part of the contact tracing efforts, he/she can consent to send his/her TraceTogether data to MOH. This facilitates the contact tracing process and enables contact tracers to inform TraceTogether users who are close contacts of COVID-19 cases more quickly. Informed, users can take the necessary action sooner, such as monitoring his own health closely for signs of flu-like symptoms. Early detection could potentially help reduce the risk of the spread of the virus, and better protect our families and loved ones The TraceTogether app is available for download on App Store and Google Play Store. For more details, visit tracetogether.gov.sg Key Benefits If you’re exposed, you’ll be contacted more quickly and you’ll be able to get tested earlier. If you show symptoms, they’ll be detected earlier and you can quickly get yourself treated. Likewise, if your family members or friends are exposed, they’ll also be contacted more quickly and tested earlier. And if they show symptoms, these will be detected earlier and they can quickly get themselves treated. The app supports healthcare workers and contact tracers. When you use the app, you’ll be part of a larger community committed to stopping the spread of COVID-19. Key Features The application is simple and easy-to-use. Simply download the app, grant the app permission to log data and turn on your Bluetooth. The mobile app uses Bluetooth signals to determine if you are near another TraceTogether user. No location data is collected. The data logged by the app remains encrypted in the mobile device where it is installed at all times. Only those who test positive for COVID-19 will be asked to share the data logged to speed up contact tracing. TraceTogether is voluntary. Users opt-in and can withdraw their consent at any time. The app’s functionality is active only during outbreaks and when contact tracing is a critical part of stopping the spread. Source: https://www.gov.sg/article/digital-contact-tracing-tools-for-all-businesses-operatingduring-circuit-breaker What is the SafeEntry app? SafeEntry is a national digital check-in system developed by GovTech, which logs individuals’ entry into a venue. The system captures details that enable contact tracers to find close contacts of infected cases quickly. Individuals scan a QR code on their mobile devices, and particulars such as their name, NRIC/FIN and mobile number are logged. Should there be a confirmed case at that location, contact tracing can be sped up using information from SafeEntry, which in turn helps prevent new clusters from forming. Where is SafeEntry used at? SafeEntry will be deployed extensively across Singapore, especially at places with a higher risk of non-transient contact, such as workplaces, malls and supermarkets. From 23 Apr 2020, the Government had started using SafeEntry at hotspots, workplaces of essential services, and selected public venues. The use of SafeEntry will be expanded to all operating businesses from 12 May 2020, to allow employees and visitors’ entry and exit timings to be logged. SafeEntry is not mandatory at places like MRT stations and parks, where transient populations are on the move. However, the public is still encouraged to scan the QR codes put up to help contact tracing efforts. Is my data safe? Yes. Data collected by SafeEntry is only used by authorised personnel for contact tracing purposes. Stringent measures are in place to safeguard the data in accordance with the Government’s data security standards. Contact us to get any help related to database designing for app development at here contact@codersarts.com
- Blackjack Using Q-Learning
Abstract Blackjack is a popular card game played in many casinos. The objective of the game is to win money by obtaining a point total higher than the dealer’s without exceeding 21. Determining an optimal blackjack strategy proves to be a difficult challenge due to the stochastic nature of the game. This presents an interesting opportunity for machine learning algorithms. Supervised learning techniques may provide a viable solution, but do not take advantage of the inherent reward structure of the game. Reinforcement learning algorithms generally perform well in stochastic environments, and could utilize blackjack's reward structure. This paper explores reinforcement learning as a means of approximating an optimal blackjack strategy using the Q-learning algorithm. 1 Introduction 1.1 The Blackjack Problem Domain The objective of blackjack is to win money by obtaining a point total higher than the dealer’s without exceeding 21. The game works by assigning each card a point value. Cards 2 through 10 are worth their face value, while Jacks, Queens, and Kings are worth 10 points. An ace is worth either 1 or 11 points, whichever is the most beneficial. Before the start of every hand, each player at the table places a bet. Next, the players are dealt two cards face up. The dealer also receives two cards: One face down, and one face up. The challenge is to choose the best action given your current hand, and the face up card of the dealer. Possible actions include hitting, standing, splitting, or doubling down. Hitting refers to receiving another card from the dealer. Players may hit as many times as they wish, as long as they do not bust 1 If additional cards are not desirable, one may choose to stand. If a player receives two cards of the same value, it is possible to split, and play each card as a separate hand. For example, if two 7's are dealt, one may split, and play each 7 separately. The catch is that an additional bet of equal size to the original must be placed. At any given time a player may also choose to double down. This means doubling one's bet in the middle of a hand, on the condition of receiving only one additional card from the dealer. The stochastic nature of blackjack presents an interesting challenge for machine learning algorithms. A supervised learning algorithm constructs a model by learning on a labeled set of instances. One drawback with this approach is that it does not take the inherent reward structure of the game into account. An ideal blackjack strategy will maximize financial return in the long run. Reinforcement learning algorithms are particularly well suited for these types of problems. Also, the game can be easily modeled as a Markov Decision Process (MDP). These factors suggest that a reinforcement learning approach is appropriate for approximating an optimal blackjack strategy. The next section provides a brief overview of reinforcement learning, which is followed by a description of the Q-learning algorithm. 1.2 Reinforcement Learning Reinforcement learning techniques rely on feedback from the environment in order to learn. Feedback takes the form of a numerical reward signal, and guides the agent in developing its policy. The environment is usually modeled as an MDP, which is defined by a set of states, actions, transition probabilities, and expected rewards (Sutton & Barto, 1998). Each action has a probability of being the action selected, as well as an associated value, which corresponds to the expected reward of taking the action. A greedy action is an action that has the greatest value. In order to learn, the agent must balance exploration and exploitation of the environment. During exploration, the agent tries non-greedy actions in hopes of improving its estimates of their values. Value functions allow agent to compute how “good” it is to be in a given state. Vπ(s) is called the state-value function, and allows the agent to compute the expected reward of being in state s, and following policy π (Sutton & Barto 1998). Qπ(s, a) is called the action-value function, and allows the agent to compute the expected reward of being in state s, taking action a, and thereafter following policy π (Suton & Barto 1998). An optimal policy consists of the actions that lead to the greatest reward over time. The optimal state-value function is denoted by V*(s), and the optimal action-value function is denoted by Q*(s, a). 1.3 The Q-Learning Algorithm The Q-learning algorithm is a temporal difference (TD) method that approximates Q*(s, a) directly (Sutton & Barto, 1998). TD methods such as Q-learning are incremental algorithms that update the estimates of Q(s, a) on each time-step. The Q-learning algorithm is outlined below. The parameter alpha is referred to as the learning rate, and determines the size of the update made on each time-step. Gama is referred to as the discount rate, which determines the value of future rewards. The Q-learning algorithm is guaranteed to converge to Q*(s, a) with probability 1, as long as each state-action pair is continually updated (Suton & Barto, 1998). The algorithm is well suited for on-line applications, and generally performs well in practice. 2 Implementation Details The Q-learning algorithm is an excellent method for approximating an optimal blackjack strategy because it allows learning to take place during play. This makes it a good choice for the blackjack problem domain. Blackjack is easily formulated as an episodic task, where the terminal state of an episode corresponds to the end of a hand. The state representation consists of the agent's current point total, the value of the dealer's face up card, whether or not the hand is soft 2 , and whether or not the agent's hand may be split. Certainly, more robust state representations could be used, but I wanted to keep the size of the state space at a minimum. Actions include hit, stand, split, and double down. All of the possible actions where included in an attempt to stay true to the game. The reward structure is as follows: For each action that does not result in a transition to a terminal state, a reward of 0 is given. Once a terminal state has been reached, a reward is given based on the size of the agent's bet. For example, if the agent bets 5 dollars, and wins the hand, a reward of +5 is given. If the agent loses the hand, a reward of -5 is given. A static betting strategy is used because the state representation does not allow predictions to be made concerning which cards may appear in the following hands. A complete list of the rules adopted for the blackjack simulator are listed in Figure 2. 3 Experimental Evaluation 3.1 Methodology To evaluate the performance of my learning agent, two hard coded players have been implemented. The first player takes completely random actions, while the second follows a strategy known as basic strategy. Basic strategy cuts the casinos edge down to less than one percent, and is the optimal policy for the state representation adopted (Wong 1994). My experimental approach consists of five runs, where each run is a cycle of training hands, and test hands. During training, the agent plays with four other reinforcement learning agents, all of which share the same lookup tables. During the test hands, the agent plays with the random player, and the basic strategy player. Each player starts with $1,000, and makes the same initial bet of $5. Within each run, the number of training hands is continually increased to a total of 10 million, while the number of test hands remains constant at 100,000. This procedure is summarized in Figure 3. The reinforcement learning agent's initial policy is completely random. Thus, one would expect it to perform similarly to the random player initially. As the number of training hands increases, the learning agent's policy should converge to basic strategy because the Q- learning algorithm directly approximates Q*(s, a). 3.2 Results Figure 4 shows average performance results for each player over the five runs. The number of test hands remains constant at 100,000, while the number of training hands is continually increased to ten million. Notice that all of the players lose money. This is true even of the optimal policy, which demonstrates the difficulty of actually winning money playing blackjack. A comparison between the random player, and the learning agent reveals a significantly better performance by the learning agent. It is apparent that the agent is learning useful information during the training process. Also notice that the learning agent's performance asymptotically approaches the performance of the basic strategy player. This is to be expected because the Q-learning algorithm directly approximates the optimal action-value function Q*(s, a). Upon examination of the standard deviations between the performance of the basic strategy player, and the reinforcement learning player, it was revealed that they did not overlap. This means that the learning agent did not converge to the optimal policy, but rather a near optimal policy. 4 Future Work While the results of the previous section indicate that the reinforcement learning agent is learning a near optimal policy, there is room for improvement. Currently, my learning algorithm uses an epsilon-greedy exploration strategy. An algorithm with a more sophisticated exploration strategy, such as the Bayesian Q-learning algorithm described by Dearden, Friedman, and Russel (1998), may yield better results. The Bayesian Q-learning algorithm maintains probability distributions over Q- values, in an attempt balance exploration and exploitation by maximizing information gain. Including more information in the state representation may increase performance as well. One could image the addition of a hi-low count. This, in conjunction with a dynamic betting strategy, may allow performance to surpass that of the basic strategy player. Are you looking solutions of these reinforcement learning project, of any other help related to complex machine learning project then you can contact us at here: contact@codersarts.com
- spring security
Spring Security is a framework that focuses on providing both authentication and authorization to Java EE-based enterprise software applications. Feature Comprehensive and extensible support for both Authentication and Authorization Protection against attacks like session fixation, clickjacking, cross site request forgery, etc Servlet API integration Optional integration with Spring Web MVC Maven Dependency(pom.xml) To include spring security in your maven based project, include below dependency: 4.0.0 org.springframework.boot spring-boot-starter-parent 2.3.4.RELEASE com.example LoginSecurity 0.0.1-SNAPSHOT LoginSecurity Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine org.springframework.boot spring-boot-starter-security org.springframework.boot spring-boot-maven-plugin LoginSecurityApplication.java The entry point of the Spring Boot Application is the class contains @SpringBootApplication annotation. This class should have the main method to run the Spring Boot application. @SpringBootApplication annotation includes Auto- Configuration, Component Scan, and Spring Boot Configuration. package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class LoginSecurityApplication { public static void main(String[] args) { SpringApplication.run(LoginSecurityApplication.class, args); } } LoginController.java Spring @RestController is a convenience annotation that is itself annotated with @Controller and @ResponseBody. This annotation is used to mark a class as request handler for RESTful web services. package com.example.demo.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class LoginController { @RequestMapping({ "/validateLogin" }) public String validateLogin() { return "User successfully authenticated"; } } SecurityConfig.java Let's start by creating a Spring Security configuration class that extends WebSecurityConfigurerAdapter. By adding @EnableWebSecurity, we get Spring Security and MVC integration support: package com.example.demo.security; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpMethod; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(). authorizeRequests().antMatchers(HttpMethod.OPTIONS, "/**").permitAll().anyRequest().authenticated() .and().httpBasic(); } @Autowired public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication().withUser("codersarts").password("{noop}password").roles("USER"); } } Start Application Right-click on the Application class and select Run AsSpring Boot App. The embedded server starts listening on port 8083. When you point your browser to http://localhost:8083 you should see the User successfully authenticated. Enter UserName =codersarts and Password = password http://localhost:8083/validateLogin
- "Project Team Formation" Using JavaFx
1. Overview Assessment Type: Individual assignment; no group work. Submit online via Canvas → Assignments → Assignment. Marks are awarded for meeting requirements as closely as possible according to assignment specifications and the supplied rubric. Clarifications/updates may be made via announcements/relevant discussion forums. NOTE: Carefully read this document. In addition, regularly follow the Canvas assignment discussion board for assignment related clarifications and discussion. Motivation: This individual assignment titled Project Team Formation requires developing a software that allows members to be assigned to project teams taking into consideration specific constraints while attempting to meet objective criteria reflecting ethical considerations, aspirations of project owners and preferences of students. This assignment is based on actual workplace practices and is reflective of tools used for making management decisions meeting multiple criteria such as increasing profits and improving employer satisfaction while meeting mandatory legal requirements. To be useful for managerssuch tools helping to find near optimal solutions (through the use of appropriate algorithms) must be made easily accessible using custom designed graphical user interfaces and visualization. Using Java as a vehicle, you are required to demonstrate your understanding of object-oriented design principles, design patterns, generics, graphical user interfaces, unit testing, object relational mapping, data structures and algorithms, building on the foundations laid by the Programming Fundamentals course. This Project Team Formation assignment should incorporate appropriate visual elements and event-handling allowing managers to simulate the impact of their decisions visually (sensitivity analysis). It should also assist the manager in finding better solutions by using heuristic algorithms and appropriate data structures. To manage the complexity, the assignment is divided into five milestones (starting from week 3 and going until week 11) each carrying 4 marks and a final submission in week 12 carrying 30 marks. The initial milestones are very prescriptive to help you get started and make steady progress. The final milestone allows adequate room for creativity in interaction, development of fit for purpose algorithms and the use of appropriate design patterns to improve usability. Your assignment submitted will be marked based on functional features, qualitative aspects, reflective practices and explorative learning. During the final face to face assessment you will also be required to justify your design decisions as well as explain how your program can be extended to meet other related requirements. Disclaimer: the specification in this assignment is intended to represent a simplified version of a system in real life and thus is not meant to be a 100% accurate simulation of any real system or service that is being used commercially. 2. Learning Outcomes This assessment relates to all of the learning outcomes of the course which are: CL01: use the Java programming language in the implementation of small to medium sized application programs that illustrate professionally acceptable coding and performance standards. CL02: demonstrate knowledge of the basic principles of the object-oriented development process and apply this understanding to the analysis and design of solutions for small to medium scale problems. CLO3: describe and apply basic algorithms and data structures, in particular simple searching and sorting of data stored in data structures and manipulating data. CLO4: implement basic event-driven programming and graphical user interfaces in Java Milestone 1: Preparing the Data (Involves File Processing, Exception Handling and Input Validation) Write a menu-driven program that helps the project manager capture the details related to each project, project owner, company, student personal details and student preferences, in separate files. There should be an additional menu option to shortlist projects based on student preferences. Note, there can be multiple project owners from the same company and multiple projects by the same project owner. This program should perform appropriate error checking and input validation by validating all user inputs (Your program should not crash at any time because of invalid inputs). Menu A. Add Company B. Add Project Owner C. Add Project D. Capture Student Personalities E. Add Student Preferences F. Shortlist Projects A. Add Company The details related to the company should include a unique company ID, company name, ABN number, company URL and address. The company details added should be saved to the file companies.txt. B. Add Project Owner The details captured by each project owner (contact person) should include first name, surname, a unique project owner ID (of the form Own1, …), role (such as software engineer), email and the ID of the company the project owner represents (of the form C1, ...) The project owner details added should be saved to the file owners.txt. C. Add Project The details captured for each project should include a title, a unique project ID (of the form pr1, …), brief description (one line), ID of the project owner (of the form Own1, …) and the ranking of the skills sought after for the project (4 being the highest and 1 the lowest) in the 4 different technical specialization (Skills) at MRIT university shown in the table below. The project details added should be saved to the file projects.txt. Technical Skill Categories (P) Programming & Software Engineering (N) Networking and Security (A) Analytics and Big Data (W) Web & Mobile applications Possible file format for the file projects.txt Customer Relationship Management (CRM) Pr5 CRM will be developed by a team of 4 using Yii framework Own3 W 4 P 3 N 2 A 1 D. Capture Student Personalities Now assume the project manager can download a file named students.txt capturing the list of students doing the project course in current semester with their average grades (HD=4, DI=3, CR=2, PA=1, NN=0) in project related technical skills (P programming, N networking, A analytics, W web) with the format shown below. Assume students have IDs S1 to S20. file format for students.txt (You need to create such a file with 20 students)) S1 P 4 N 3 A 2 W 1 …. The project manager interviews each of the students in the list during the first week and assigns their personality types as shown in the table below to ensure balanced teams are formed with at least one with leadership attributes in each team. It is required that the personality type assigned to students must be equally distributed across types. Characteristics Personality Type Likes to be a Leader (Director) A Outgoing and maintains good relationships (Socializer) B Detail oriented (Thinker) C Less assertive (Supporter) D In addition, the project manager allows each student to specify up to two others (student-numbers) they cannot work with in a team because of prior personal conflicts. Both the personality and conflict information must be captured and appended to existing file after the interview and saved in a text file studentinfo.txt, as shown below. file format studentinfo.txt S1 P 4 N 3 A 2 W 1 B S3 S17 …. Note, all project must be of size 4. Exceptions must be thrown when the personality types of the 4 students assigned by the project manager is not balanced. For example, if there are 20 students, the maximum number of personality types A, B, C and D can only be 5, and hence any attempt to assign A,B,C, D type to more than 5 students should result in an exception. E. Capture Student Preferences Students having attended the presentations for 10 projects decide their preferences and submit them via discussionboard by the end of first week, with 4 for most preferred and 1 for the least. These preferences should be saved in the file preferences.txt. A student may add preferences multiple times, but only the final preference should be counted. file-format for preferences.txt S1 Pr6 4 Pr8 3 Pr6 2 Pr4 1 …. F Shortlist Projects based on Preferences The student preferences for projects (from 4 down to 1) should be summed up for all the projects before discarding the 5 least popular projects in the file projects.txt. Milestone 2: Forming Project Teams Manually and Creating the Test Cases (4 Marks) In this milestone you are required to ensure teams are balanced in terms of personality types, each team has at least one leader type (A) and students with personality conflicts are not placed in the same team. In addition, for each team you are required to compute Team-Fitness Metrics which will allow project manager to swap members when necessary (next milestone) considering ethical considerations as well as preferences of owners and students. Team-Fitness Metrics 1. Average student skill competency for each project team. This value should not vary greatly between teams to ensure fairness (ethical consideration). 2. Percentage of students who got their first and second preferences in each of the teams. A good allocation should try to maximize this percentage to improve student satisfaction. 3. Skills shortfall for each project based on categories in which the average grade for a skill category (between 0 and 4) falls below the requested level for that category. It is derived by summing up the absolute difference between skill level requested and the average skill level of team members for categories where the average skill competency level is lower than the requested level. For example, if a project requested 4 for P, 3 for A, 2 for W and 1 for N, and the average skill competency for these categories are 1.5, 2.5, 2.5 and 3 respectively, then the skills shortfall for that project is 3 being (4 – 1.5) + (3 – 2.5). The project manager aims to minimize the skills shortfall and to balance it across teams to ensure all project owners get members with skill competencies close to what was requested. Extending the Menu Driven Program You are required to extend the menu-driven program creating two additional options. You are expected to make use of the data stored in the files projects.txt, studentinfo.txt and selections.txt A. Form Team B. Display Team Fitness Metrics In addition, you are required to create 10 JUnit test cases specified below and serialize all the objects (see below). A. Form Teams Project manager should be allowed to specify the project ID followed by the IDs of all the students to be assigned to the project. You are expected to develop the appropriate classes. B. Display Team Fitness Metrics Create a sub-menu to allow the user to display the required team fitness metrics. This menu should only be enabled after all the teams are formed. Test Cases (You are required to write both positive and negative test cases) a) Average skill competency for a team is computed correctly b) Percentage of project members getting first and second project preference is computed correctly c) Skill shortfall for any team is computed correctly. d) InvalidMember exception thrown when an attempt is made to add a student already assigned to another project team e) StudentConflict exception thrown when students members who have indicated prior conflicts are assigned to the same team f) PersonalityImbalance exception whenever a team has less than three different personality types. g) RepeatedMember exception thrown when an attempt is made to add a student twice to the same team h) NoLeader exception thrown when a team does not have a leader personality type i) Standard deviation (see formula in last page) in skill competency across projects computed correctly. j) Standard deviation for percentage of project members getting first and second project preferences across projects computed correctly k) Standard deviation of shortfall across teams is computed correctly. Serialization Your program should allow all project and student objects to be serialized and retrieved Milestone 3: Visual Sensitivity Analysis The main aim for this milestone is to assist project manager improve fairness and overall satisfaction of all stakeholders as measured by the metrics by assigning and swapping members between teams. To meet this goal, you are required to incorporate appropriate GUI and event handling for adding and swapping members. You are required to combine the model class from the previous milestone with view and controller classes developed with either Scene Builder and fxml or Java FX directly. When adding project manager should specify the Student ID and tick an empty location on one of the teams before pressing Add. When swapping user should click the two student IDs to be swapped before clicking the Swap button. All the metrics must be immediately updated and shown visually. Compute and display the standard deviation for all three metrics. You are expected to display error messages in appropriate dialogs (not console mode) when invalid add or swap attempts are made (such as attempting to swap 3 elements at a time). You are required to clearly separate the code for the model, view and the controller. Appropriate layout managers to ensure GUI window is consistent even when resized Milestone 4: Object Relational Mapping of all the Project related Data Captured and Derived This milestone requires you to develop the code for object relational mapping. You are required to write all the client, project and student related data to tables in the relational database. The tables created will be used as inputs to external systems. Your tables must include the necessary primary and secondary keys to make the correct associations. This milestone may be demonstrated in console mode (as with milestones 1 and 2) or GUI mode (milestone 3). Milestone 5: Using Heuristic Techniques for Creating Well Balanced Teams This milestone should only be attempted only after completing first three milestone as this will be much more demanding and open ended and you will be expected to learn and use additional patterns and algorithms. You will also be expected make use of multithreading to provide suggestions to the project manager in an unobtrusive way using the console (writing to GUI may interfere with the Java FX threads). The main requirements are: Develop algorithms and implement t them to suggest appropriate swaps so that team-fitness metrics can be improved by narrowing the gap between different teams for all three metrics (lowering the standard deviation). You need to demonstrate following these suggestions will help improve the metrics. The suggestions should be offered unobtrusively using a separate thread. Your suggestions must not violate any of the hard constraints and lead to a new state which improves all 3 metrics specified. Incorporate an undo button allowing previous state to be restored making use of appropriate patterns. Assignment Details You are required to combine and refactor the code you developed as part of your milestones after fixing any issues identified. 50% of the marks is allocated for the functional aspects specified in the 5 milestones. The remaining 50% of the marks are allocated for code quality, following good object-oriented design, reflective practices (report 1), scalability (report 2) and lessons learnt (report 3). Please refer to the Canvas rubrics for details. Correctly preprocessing data used in team formation (refining milestone 1) and handling all the error conditions and exceptions. Correctly carrying out at least 10 test cases that demonstrate an in-depth understanding of the problem domain (refining milestone 2) including the metrics used, enforcing all the constraints associated with teams and standard deviation. Effectively facilitating visual sensitivity analysis through the use of visual elements and event handing (refining milestone 3). The graphical user interface designed and implemented must be effective, intuitive, usable and fit for purpose. Effectiveness will be measured by how easily team members can be assigned and swapped, how well the visual elements depict the metrics of interest and how error states are avoided. Correctly mapping the data from object-oriented paradigm to relational database tables capturing all the relevant attributes and associations (refining milestone 4). Use of heuristic techniques, multithreading and patterns (for undo) to assist the project manager form well balanced teams in an unobtrusive and convenient way (refining milestone 5). You are required to demonstrate effective use of object-oriented programming constructs (encapsulation, inheritance, polymorphism, abstract classes, interfaces and composition), principles (SOLID) and GoF patterns (such as singleton) You code developed as part of the milestone should be refactored adhering to established coding standards to make it readable and maintainable. Your code must be refactored to have a clear separation between model, view and controller classes. A one-page document justifying the data structures, collections, generics, algorithms and design techniques used. If you want to describe your design, you may use UML diagrams. You may be asked to explain these. A one-page report on scalability (as the number of students and teams increase) considering possible limitations of the algorithms and GUI you developed. You may be asked to explain these. A one-page document on lessons-learnt reflecting on the problems encountered and how you would avoid them in a future project. You may be asked to explain these. Contact us to get Advanced Java Programming Help contact@codersarts.com
- Creating Task Manager: Python Project Sample
Project Details: Follow these steps to create task manager: In this task, you will be creating a program for a small business that can help it to manage tasks assigned to each member of the team. You will extend this task in the next Capstone project. Create a Python file called task_manager.py in this folder. This program will work with two text files, user.txt and tasks.txt. Open each of the files that accompany this project and take note of the following: tasks.txt stores a list of all the tasks that the team is working on. Open the tasks.txt file that accompanies this project. Note that this text file already contains data about two tasks. The data for each task is stored on a separate line in the text file. Each line includes the following data about a task in this order: ■ The username of the person to whom the task is assigned. ■ The title of the task. ■ A description of the task. ■ The date that the task was assigned to the user. ■ The due date for the task. ■ Either a ‘Yes’ or ‘No’ value that specifies if the task has been completed yet. user.txt stores the username and password for each user that has permission to use your program (task_manager.py). Open the user.txt file that accompanies this project. Note that this text file already contains one default user that has the username, ‘admin’ and the password, ‘adm1n’. The username and password for each user must be written to this file in the following format: 1. First, the username followed by a comma, a space and then the password. 2. One username and corresponding password per line Your program should allow your users to do the following: Login. The user should be prompted to enter a username and password. A list of valid usernames and passwords are stored in a text file called user.txt. Display an appropriate error message if the user enters a username that is not listed in user.txt or enters a valid username but not a valid password. The user should repeatedly be asked to enter a valid username and password until they provide appropriate credentials. The following menu should be displayed once the user has successfully logged in: Please Enter one of the following option: 1. r - register user 2. a - add task 3. va - view all task 4. vm - view my task 5. e - exit If the user chooses ‘r’ to register a user, the user should be prompted for a new username and password. The user should also be asked to confirm the password. If the value entered to confirm the password matches the value of the password, the username and password should be written to user.txt in the appropriate format. If the user chooses ‘a’ to add a task, the user should be prompted to enter the username of the person the task is assigned to, the title of the task, a description of the task and the due date of the task. The data about the new task should be written to tasks.txt. The date on which the task is assigned should be the current date. Also assume that whenever you add a new task, the value that indicates whether the task has been completed or not is ‘No’ If the user chooses ‘va’ to view all tasks, display the information for each task on the screen in an easy to read format. If the user chooses ‘vm’ to view the tasks that are assigned to them, only display all the tasks that have been assigned to the user that is currently logged-in in a user-friendly, easy to read manner. Note: Now format your program so that: Only the user with the username ‘admin’ is allowed to register users. The admin user is provided with a new menu option that allows them to display statistics. When this menu option is selected, the total number of tasks and the total number of users should be displayed in a user-friendly manner. If you need any small business application using python or need any other help related to programming assignments then you can contact us at below details: Contact us to get instant help contact@codersarts.com
- Covid-19 Worldwide Analysis
Introduction: With the rapid spread in the novel corona-virus across countries, the World Health Organisation (WHO)and several countries have published the latest results on the impact of COVID-19 over the past few months. I have been going through many sources and articles to understand the fatality trend and I was excited to come across this data source and decided to see some visualization on the same. The aim here is to understand how visualization helps to derive informative insights from data sources. Dependencies Pandas Numpy Matplotlib Seaborn Plotly Folium Cufflinks Importing The Libraries import pandas as pd import numpy as np import matplotlib.pyplot as plt from matplotlib import ticker import pycountry_convert as pc import folium import branca from datetime import datetime, timedelta,date from scipy.interpolate import make_interp_spline, BSpline import plotly.express as px import json, requests from keras.layers import Input, Dense, Activation, LeakyReLU from keras import models from keras.optimizers import RMSprop, Adam %matplotlib inline In this Blog, we need to import all the libraries with all the dependencies. The next step is to import the CSV files. # Retriving Dataset df_confirmed = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv') df_deaths = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv') df_covid19 = pd.read_csv("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/web-data/data/cases_country.csv") df_table = pd.read_csv("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/web-data/data/cases_time.csv",parse_dates=['Last_Update']) The datasets are read successfully. The very first analysis will be the % of Active, Confirmed, and Death cases all over the world. so from this above figure, we can see there are more % of recovered than Active and Deaths, whereas deaths hold the least %. Let's analyze Top-10 countries on the basis of Confirmed, Recovered, and Deaths. df_countries_cases = df_covid19.copy().drop(['Lat','Long_','continent','Last_Update'],axis =1) df_countries_cases.index = df_countries_cases["country"] df_countries_cases = df_countries_cases.drop(['country'],axis=1) df_continents_cases = df_covid19.copy().drop(['Lat','Long_','country','Last_Update'],axis =1) df_continents_cases = df_continents_cases.groupby(["continent"]).sum() f = plt.figure(figsize=(10,5)) f.add_subplot(111) plt.axes(axisbelow=True) plt.barh(df_countries_cases.sort_values('Confirmed')["Confirmed"].index[-10:],df_countries_cases.sort_values('Confirmed')["Confirmed"].values[-10:],color="darkcyan") plt.tick_params(size=5,labelsize = 13) plt.xlabel("Confirmed Cases",fontsize=18) plt.title("Top 10 Countries (Confirmed Cases)",fontsize=20) plt.grid(alpha=0.3) From the above figure, we can conclude that the USA reports the most number of Confirmed cases In accordance with it India and Brazil report the number of confirmed cases in the second and third positions respectively. Let's see for the Recovered and Deaths cases f = plt.figure(figsize=(10,5)) f.add_subplot(111) plt.axes(axisbelow=True) plt.barh(df_countries_cases.sort_values('Recovered')["Recovered"].index[-10:],df_countries_cases.sort_values('Recovered')["Recovered"].values[-10:],color="limegreen") plt.tick_params(size=5,labelsize = 13) plt.xlabel("Recovered Cases",fontsize=18) plt.title("Top 10 Countries (Recovered Cases)",fontsize=20) plt.grid(alpha=0.3,which='both') From the above figure, we can conclude that Brazil reports the most number of Recovered cases In accordance with it India and the USA reports the number of recovered cases in the second and third positions respectively. Let's see for the Active and Deaths cases. From the above figure, we can conclude that the USA reports the most number of deaths cases In accordance with it India and Brazil report the number of Deaths cases in the second and third positions respectively. Let's see for Active cases. From the above figure, we can conclude that the USA reports the most number of Active cases In accordance with it India and Brazil report the number of Active cases in the second and third positions respectively. The above figure itself shows the effect of Corona-virus all over the world. Let's analyze with log-base Here are the confirmed cases heatmap. Let's see confirmed, Recovered, Deaths in One figure. confirmed = df1.groupby('ObservationDate').sum()['Confirmed'].reset_index() deaths = df1.groupby('ObservationDate').sum()['Deaths'].reset_index() recovered = df1.groupby('ObservationDate').sum()['Recovered'].reset_index() fig = go.Figure() fig.add_trace(go.Scatter(x=confirmed['ObservationDate'], y=confirmed['Confirmed'], mode='lines+markers', name='Confirmed',line=dict(color='blue', width=2))) fig.add_trace(go.Scatter(x=deaths['ObservationDate'], y=deaths['Deaths'], mode='lines+markers', name='Deaths', line=dict(color='Red', width=2))) fig.add_trace(go.Scatter(x=recovered['ObservationDate'], y=recovered['Recovered'], mode='lines+markers', name='Recovered', line=dict(color='Green', width=2))) fig.update_layout(title='Worldwide NCOVID-19 Cases', xaxis_tickfont_size=14,yaxis=dict(title='Number of Cases')) fig.show() The x-axis represents the Dates whereas the y-axis represents the number of cases The confirmed graph shows in blue whereas the deaths and recovered are indicated as red and green color respectively. Most affected Countries #COVID-19 Spread Trends in Few Most Affected Countries df_countries = df_confirmed.groupby(["country"]).sum() df_countries = df_countries.sort_values(df_countries.columns[-1],ascending = False) countries = df_countries[df_countries[df_countries.columns[-1]] >= 1000].index cols =2 rows = int(np.ceil(countries.shape[0]/cols)) f = plt.figure(figsize=(20,8*rows)) for i,country in enumerate(countries): visualize_covid_cases(df_confirmed, df_deaths,country = country,figure = [f,rows,cols, i+1]) plt.show() The animation is attached below the changes and spreading of coronavirus in the respective months. Thank You! Happy Coding ;)
- Covid-19 Data Analysis in INDIA
COVID-19, a novel coronavirus, is currently a major worldwide threat. It has infected more than five million people globally leading to thousands of deaths. In such grave circumstances, it is very important to predict the future infected cases to support the prevention of the disease and aid in the healthcare service preparation. Following that notion, we have developed a model and then employed it for time-series analysis of COVID-19 cases in India. The study indicates an ascending trend for the cases in the coming days. In this blog, we'll see different types of analysis of the Corona Virus in India. Dependencies Pandas Numpy Matplotlib Seaborn Plotly Folium Cufflinks Importing The Libraries import pandas as pd import matplotlib.pyplot as plt %matplotlib inline import seaborn as sns import plotly.express as px import plotly.graph_objects as go import folium from folium import plugins plt.rcParams['figure.figsize'] = 10, 12 import warnings warnings.filterwarnings('ignore') In this Blog, we need to import all the libraries with all the dependencies. The next step is to import the CSV files. df= pd.read_csv('covid_19_india.csv') We've read the CSV file in the above lines of code. df.drop(['ConfirmedIndianNational','ConfirmedForeignNational'],axis=1,inplace=True) We've dropped the Unnecessary columns in the above lines of code. Visualization: In this step, we will analyze some visualizations. In this above visualization, we can see 2 bar charts of total and cured legend. The X-axis represents the number of cases whereas y-axis represents the state. The total defines the number of total cases reported in that state holds red colour, whereas the cured defines the total number of people cured of coronavirus in that state holds green colour. We can see that Maharastra holds the most number of total confirmed cases as well as the highest number of cured people whereas some Union-territories like Dadra Nagar Haveli holds the least number of cases. Let's Check/Visualize wrt Age. age_details=pd.read_csv('AgeGroupDetails.csv') Here we have imported the dataset AgegroupDetails in the data frame age_details. In the above figure, we can see the group-wise age distributions in a pie-chart. From the above figure we've concluded that the age group between 20-29 has reported the maximum number of cases, so we can say mostly the youths and after that, the age range between 30-39 has reported the second maximum number of cases. Gender-wise individual_details=pd.read_csv('IndividualDetails.csv') we can see the gender difference in the number of cases, here we can see the % of males is more than females, the reason might be the number of males is more than females or the females are following the lockdown rules more precisely than females. ICMR Testing Details ICMR_labs=pd.read_csv('ICMRTestingLabs.csv') In these above lines of code, we have imported the dataset of ICMRtestinglabs. values = list(ICMR_labs['state'].value_counts()) names = list(ICMR_labs['state'].value_counts().index) plt.figure(figsize=(15,10)) sns.set_color_codes("pastel") plt.title('ICMR Testing Centers in each State', fontsize = 20) sns.barplot(x= values, y= names,color = '#9370db'); IN this above fig we can see that Maharashtra has the most number of ICMR testing labs and it is pretty obvious also as that state reported the maximum number of cases. Let's check for all the states all_state = list(df['State/UnionTerritory'].unique()) all_state.remove('Unassigned') #all_state.remove('Nagaland#') #all_state.remove('Nagaland') latest = df[df['Date'] > '10-08-20'] state_cases = latest.groupby('State/UnionTerritory')['Confirmed','Deaths','Cured'].max().reset_index() latest['Active'] = latest['Confirmed'] - (latest['Deaths']- latest['Cured']) state_cases = state_cases.sort_values('Confirmed', ascending= False).fillna(0) states =list(state_cases['State/UnionTerritory'][0:15]) states_confirmed = {} states_deaths = {} states_recovered = {} states_active = {} states_dates = {} for state in states: df = latest[latest['State/UnionTerritory'] == state].reset_index() k = [] l = [] m = [] n = [] for i in range(1,len(df)): k.append(df['Confirmed'][i]-df['Confirmed'][i-1]) l.append(df['Deaths'][i]-df['Deaths'][i-1]) m.append(df['Cured'][i]-df['Cured'][i-1]) n.append(df['Active'][i]-df['Active'][i-1]) states_confirmed[state] = k states_deaths[state] = l states_recovered[state] = m states_active[state] = n date = list(df['Date']) states_dates[state] = date[1:] colors_list = ['cyan','teal'] states = individual_details['detected_state'].unique() if len(states)%2==0: n_rows = int(len(states)/2) else: n_rows = int((len(states)+1)/3) plt.figure(figsize=(14,60)) for idx,state in enumerate(states): plt.subplot(n_rows,3,idx+1) y_order = individual_details[individual_details['detected_state']==state]['detected_district'].value_counts().index try: g = sns.countplot(data=individual_details[individual_details['detected_state']==state],y='detected_district',orient='v',color=colors_list[idx%2],order=y_order) plt.xlabel('Number of Cases') plt.ylabel('') plt.title(state) plt.ylim(14,-1) except: pass plt.tight_layout() plt.show() The above figure shows the cases of all the states with their respective districts. Analysis in a Nutshell Thank You! Happy Coding











