The program, word_frequency, counts the number of occurrences of words in a document. The program takes a filename as a parameter and performs the task. Get the program to run using the attached text file called document.txt. The file contains a piece of text. After you run the program and understand it's logic, modify word_frequency.py to use a binary search tree instead of a dictionary. Tasks: 1. Import a binary search tree 2. Change the filename in the program to reflect the change(s) made Python Only and no other coding languages. Import the module first before running it. Please show output when done. (build off of this file and try not to change too much) word_frequency.py: import sys filename = sys.argv[1] freq = {} for piece in open(filename).read().lower().split(): # only consider alphabetic characters within this piece word = ''.join(c for c in piece if c.isalpha()) if word:                                # require at least one alphabetic character

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

The program, word_frequency, counts the number of occurrences of words in a document. The program takes a filename as a parameter and performs the task.

Get the program to run using the attached text file called document.txt. The file contains a piece of text. After you run the program and understand it's logic, modify word_frequency.py to use a binary search tree instead of a dictionary.

Tasks:

1. Import a binary search tree

2. Change the filename in the program to reflect the change(s) made

Python Only and no other coding languages. Import the module first before running it. Please show output when done.

(build off of this file and try not to change too much) word_frequency.py:

import sys
filename = sys.argv[1]

freq = {}
for piece in open(filename).read().lower().split():
# only consider alphabetic characters within this piece
word = ''.join(c for c in piece if c.isalpha())
if word:                                # require at least one alphabetic character
    freq[word] = 1 + freq.get(word, 0)

max_word = ''
max_count = 0
for (w,c) in freq.items():    # (key, value) tuples represent (word, count)
if c > max_count:
    max_word = w
    max_count = c
print('The most frequent word is', max_word)
print('Its number of occurrences is', max_count)

 

 

(copy and paste this into a text document) document.txt:

Shakespeare starts Sonnet 18 with a flattering question to the beloved:
"Shall I compare thee to a summer’s day?" He goes on to list some negative
aspects of summer to establish that his beloved is better.
In the last part of the poem, he states that the beauty of his beloved will never
fade as he will make it eternal though the words of this poem which will remind the
world of him “so long as men can breathe or eyes can see“.
Sonnet 18 is the most famous poem written by William Shakespeare and among the most
renowned sonnets ever written.

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Operations of Linked List
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education