Reference no: EM131163389
Reasoning and Learning Spring
Assignment 1
Question 1
Create a one single file named ‘question1.lisp' which defines the following functions in the Lisp programming language. Make sure that your code runs correctly under clisp. The tree parts attract equal marks.
1. Write a function (NumberOfPrimes <list>) which counts the number of primes in a (possibly nested) list.
Example: (NumberOfPrimes ‘(((1)(2))(5)(3)((8)3)) returns 4.
2. Define a function (even <list>) which returns the subset (a list) of even numbers contained in a given numeric, possibly nested list. Example: (even ‘(1 2 (3 4) -4)) returns (2 4 -4). Note that the result must maintain the order of the even numbers in the original list, and the result must be a flat list.
3. Define a function (SumIfNot <list1> <list2>) that returns the sum of all elements in list2 that do not appear in list1. Both lists may be nested lists. Example: (SumIfNot ‘(1 8 (2)) ‘(1 (3 (8)) 8 9)) returns 12.
Note: Your code will be tested on examples that may differ from the ones shown here. Hence, write your code such that it would work correctly for any list of arguments.
Question 2
Implement the ID3 algorithm (see Decision Tree in Lecture notes) in lisp. Your code is to read from a local data file called "data.txt", then creates a nested list that corresponds to the Decision Tree for the data in data.txt.
Assume that the data file contains N entries and M columns. The columns are separated by a single space, and the rows are terminated by a single newline ‘\n' (unix text format). The last column shall contain the target value or class label. The first row contains the name of the attributes. You can assume that all attribute values and the targets are symbolic (ie. Not numeric). A sample data file is provided with this assignment.
Your code produces a list as output which corresponds to the DT generated. The list must follow the following syntax:
LIST = (Attribute Value LIST) | CLASS,
Where CLASS is a terminal (the leaf node) containing one of the permissible class labels (as defined in the data file).
Thus, the correct output for the sample file provided would be as follows:
((Dividend AboveAverage (Turnover High (NO))(Turnover Medium (Reissued Yes (YES))(Reissued No (NO)))(Turnover Low (YES)))(Dividend Average (YES))(Dividend BelowAverage (Reissued No (YES))(Reissued Yes (NO))))
Note that your code will be tested on data files that differ in content from the provided sample. Thus, you need to ensure that your code works correctly for any data file.
Use comment lines in your code to document key points of your code.
Your code should have a comment header which contains your full name and student number.
Marking guidelines:
- The correctness of your code will be assessed. In other words, the ability of your code to produce the correct output will be assessed. Hence, if you implement incomplete code that does not produce a correct output to any given input then you may be awarded zero marks.
- There are solutions in Lisp to implementing some of the functions in this assignment (i.e. the Decision Tree algorithm) on the Internet. You are required to develop and write all of the code for this assignment by yourself. Plagiarizing code or parts thereof WILL attract zero marks!
Attachment:- data.txt
Commit to buy a vacation home in the climate of your choice
: Commit to buy a vacation home in the climate of your choice, rent the home out when you are not using it, or sign a five-year lease for the home for the two months a year you plan on using it.
|
What are some of the key attributing variables
: What are some of the key attributing variables that are causing a managers role to change? Could the factors of change be related to: New technology, new workers in the work force, Team environment and remote teams
|
Describe why the plea bargain is used so often
: The written assignment this week is for you to thoroughly discuss the pros and cons of the plea bargain as used in the American court system, and to describe why the plea bargain is used so often, the mechanics of how a plea bargain comes about, a..
|
Owners and managers and provide a real life example
: Describe the principal- agent problem as it relates to owners and managers and provide a real life example.
|
Write a function which counts the number of primes
: Create a one single file named ‘question1.lisp' which defines the following functions in the Lisp programming language. Make sure that your code runs correctly under clisp
|
Stage of the organizational life cycle
: Read the following information and discuss, "How can a corporation keep from sliding into the Decline stage of the organizational life cycle?" Use examples from "The Icarus Paradox: Trajectories of Decline"
|
Examine the potential use of mezzanine finance in property
: Examine the potential use of mezzanine finance in property development and investment. In your answer, you should canvass the following matters.
|
Does danone have substantial debt and or challenges
: When you have completed your research, answer the following question: Does Danone have substantial debt and or challenges that will impact their growth expansion plans? Please provide examples from your research
|
How wsj article impacts exchanges and investment banks
: how it impacts exchanges, investment banks, high-speed traders and individual investors as well as what you think will be an eventual resolution of this new challenge to wall street.
|