python的求
目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設、域名、網(wǎng)絡空間、網(wǎng)站托管、服務器托管、企業(yè)網(wǎng)站設計、崇州網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
標準差
的函數(shù)是std,是numpy庫的成員,
如果非要
用sd函數(shù)求標準差,也不是不行(from
numpy
import
std
as
sd)。其參數(shù)是所需求標準差的矩陣或列表,
返回值
即標準差。示范如下:
import
numpy
as
np;
from
numpy
import
std
as
sd;
print([1,
2,3],"的標準差是);
print(sd([1,2,3]));
def fangcha(): a=float(raw_input("請輸入a:")) b=float(raw_input("請輸入b:")) c=float(raw_input("請輸入C:")) d=(a+b+c)/3.0 e=((a-d)**2+(b-d)**2+(c-d)**2)/3.0 print "平均數(shù)是:%f方差是:%f" %(d,e) fangcha() Python2.7可用
1、
def?pfc(x,y):
return?x**2-y**2
2、
sum(map(lambda?x:x**2,range(101)))
3、
def?comp100(n):
return?True?if?n100?else?False
要完全避免for,連列表表達式中使用for都不可以的話,主要就靠functools的reduce了。
因為在排除for之后,簡單直接的辦法中,只有reduce是可以處理列表中連續(xù)兩個元素的。
當然,也可以不用reduce,使用map也是可以的:
至于做成方法,定義一個基于list的類后也差不多:
你好, 代碼如下:
------
a = [10, 8, 2, 45, 69, 38, 11, 15] #假設該列表為需要輸入的一組數(shù)
a.sort(reverse = True) #首先對這組數(shù)進行從大到小的排序
print a #輸出排序結果
min = a[0] #令min變量記錄該列表中最大的值
for i in range( len(a) -1 ): #i用來控制列表下標, 元素個數(shù)-1為了防止下面的相減越界
if a[i] - a[i+1] min: #當前一個數(shù)減后一個小于當前min里的值時, 更新最小值
min = a[i] - a[i+1]
print min
------
運行結果:
[69, 45, 38, 15, 11, 10, 8, 2]
1
# coding = GBK
a =[1,2,3,4,5]
sum=0
b = len(a)
print("這個數(shù)組的長度為:",b)
for i? in a:
sum =sum +i
print("這個數(shù)組之和為:",sum)
print("這個數(shù)組平均數(shù)為",sum/b)
或
import sys
sum = 0
cnt = 0
f = open('1.txt', 'r')
files = f.readline()
while (files ):
sum = sum + float(files .split(",")[0])
cnt = cnt + 1
files = f.readline()
print(sum / cnt)
f.close()
或者。
#!/usr/bin/env pythonimport timeimport numpy as np
dd = np.random.randint(0, 20, size=(2*1000*1000))t_start = time.clock()avg_sum1 =
0.0BlockOffset = 0 ? ? while BlockOffset len(dd):
if dd[BlockOffset + 1] = 10:
avg_sum1 += dd[BlockOffset + 1] * 0.1
else:
avg_sum1 += dd[BlockOffset + 0] * 0.01
BlockOffset += 2print('Avg: ' + str(avg_sum1 / len(dd) / 2)) ? ?print('Exe time: ' +
str(time.clock() - t_start))
擴展資料:
python 實現(xiàn)求和、計數(shù)、最大最小值、平均值、中位數(shù)、標準偏差、百分比。
import?sys
class?Stats:
def?__init__(self, sequence):
# sequence of numbers we will process
# convert all items to floats for numerical processing
self.sequence?=?[float(item)?for?item?in?sequence]
def?sum(self):
if?len(self.sequence) ?1:
return?None
else:
return?sum(self.sequence)
def?count(self):
return?len(self.sequence)
def?min(self):
if?len(self.sequence) ?1:
return?None
else:
return?min(self.sequence)
def?max(self):
if?len(self.sequence) ?1:
return?None
else:
return?max(self.sequence)
def?avg(self):
if?len(self.sequence) ?1:
return?None
else:
return?sum(self.sequence)?/?len(self.sequence)?
def?median(self):
if?len(self.sequence) ?1:
return?None
else:
self.sequence.sort()
return?self.sequence[len(self.sequence)?//?2]
def?stdev(self):
if?len(self.sequence) ?1:
return?None
else:
avg?=?self.avg()
sdsq?=?sum([(i?-?avg)?**?2?for?i?in?self.sequence])
stdev?=?(sdsq?/?(len(self.sequence)?-?1))?**?.5
return?stdev
def?percentile(self, percentile):
if?len(self.sequence) ?1:
value?=?None
elif?(percentile =?100):
sys.stderr.write('ERROR: percentile must be 100.? you supplied: %s\n'%?percentile)
value?=?None
else:
element_idx?=?int(len(self.sequence)?*?(percentile?/?100.0))
self.sequence.sort()
value?=?self.sequence[element_idx]
return?value
參考資料來源:百度百科-python
網(wǎng)頁題目:python定義函數(shù)求差,python誤差函數(shù)
文章URL:http://chinadenli.net/article34/heehse.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設、動態(tài)網(wǎng)站、電子商務、企業(yè)建站、網(wǎng)站策劃、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)