Using Numpy to find Mean,Median,Mode or Range of inputted set of numbers
numpy, python
Solution
You are passing a string to the functions which is not allowed.
>>> meanNumbers = input("What numbers would you like to use?:")
What numbers would you like to use?:1 2 3 4 5 6
>>> np.average(meanNumbers)
#...
TypeError: cannot perform reduce with flexible type
You need to make an array or a list out of them.
>>> np.average(list(map(float, meanNumbers.split())))
3.5
IF you're seperating the elements by commas, split on the commas.
>>> np.average(list(map(float, meanNumbers.split(','))))
3.5
Problem
I am creating a program to find Mean,Median,Mode, or Range. When I run this it works fine until it gets to the part of calculating the answer. It gives me a "cannot preform reduce with flexible type" error. I have searched this error but could not find what I needed to fix. This is my first time using numpy so any help would be great. ``` import sys import numpy as np welcomeString = input("Welcome to MMMR Calculator\nWhat would you like to calculate(Mean,Median,Mode,Range):") if welcomeString.lower() == "mean": meanNumbers = input("What numbers would you like to use?:") print (np.average(meanNumbers)) stop = input() if welcomeString.lower() == "median": medianNumbers = input("What numbers would like to use?:") print (np.median(medianNumbers)) stop = input() if welcomeString.lower() == "mode": modeNumbers = input("What numbers would you like to use?:") print (np.mode(modeNumbers)) stop = input() if welcomeString.lower() == "range": rangeNumbers = input("What numbers would you like to use?:") print (np.arange(rangeNumbers)) stop = input() ```