PHPFixing
  • Privacy Policy
  • TOS
  • Ask Question
  • Contact Us
  • Home
  • PHP
  • Programming
  • SQL Injection
  • Web3.0

Wednesday, October 19, 2022

[FIXED] How do I write a function that returns mean, median and trimmed mean in python?

 October 19, 2022     function, mean, median, python, vector     No comments   

Issue

I am attempting to write a function that will give me an output of mean, median and trimmed mean depending on what is chosen. This is the problem:

Suppose x is a vector. Write a function f(x,type) where the output is mean of x if type=“mean” median of x if type=“median” 10% trimmed mean of x if type=“trimmed”. For the trimmed mean, you may use the following function: from scipy import stats stats.trim_mean(x, 0.1)

I wrote the following code but I am not getting 3 for mean or 3 for median.

import numpy as np
x_vec = np.array([1,2,3,4,5])
def f(x_vec,median):
    x= median(x_vec)
    return x

I am not sure if the function (f(x,median) or median) I am using is correct or why it is not giving the correct output. What am I missing?


Solution

Your code defines a function without calling it, there will therefore be no output.

Furthermore it seems to me that you want to pass in a function as a function argument. This is fine in principle but the function mean_trim requires a second argument. This suggests that you could use functools.partial to set the second argument, but alas the second argument is positional and partial can only set keyword arguments. To be able to use partial you can define a new function which takes a keyword argument which is then used a second argument.

import numpy as np
from scipy import stats
from functools import partial

x_vec = np.array([1,2,3,4,5])

def f(x_vec,fie=np.median):
    x= fie(x_vec)
    return x

def trim_mean(x,proportiontocut=0):
    return  stats.trim_mean(x, proportiontocut)

f(x_vec), f(x_vec,fie=partial(trim_mean,proportiontocut=0.25)), 


Answered By - Ronald van Elburg
Answer Checked By - Mary Flores (PHPFixing Volunteer)
  • Share This:  
  •  Facebook
  •  Twitter
  •  Stumble
  •  Digg
Newer Post Older Post Home

0 Comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Total Pageviews

Featured Post

Why Learn PHP Programming

Why Learn PHP Programming A widely-used open source scripting language PHP is one of the most popular programming languages in the world. It...

Subscribe To

Posts
Atom
Posts
Comments
Atom
Comments

Copyright © PHPFixing