以下代碼的功能是 統(tǒng)計(jì)列表中重復(fù)項(xiàng)的出現(xiàn)次數(shù)
成都創(chuàng)新互聯(lián)主營新寧網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶App定制開發(fā),新寧h5重慶小程序開發(fā)搭建,新寧網(wǎng)站營銷推廣歡迎新寧等地區(qū)企業(yè)咨詢
這里面就用到了 count() 函數(shù)
mylist = ['apple', 'banana', 'grape', 'banana', 'apple', 'grape', 'grape']
myset = set(mylist)
for item in myset:
print("the %s has been found %d times" % (item, mylist.count(item)))
函數(shù)COUNT在計(jì)數(shù)時(shí),將把數(shù)值型的數(shù)字計(jì)算進(jìn)去;但是錯(cuò)誤值、空值、邏輯值、日期、文字則被忽略。
如果參數(shù)是一個(gè)數(shù)組或引用,那么只統(tǒng)計(jì)數(shù)組或引用中的數(shù)字;數(shù)組中或引用的空單元格、邏輯值、文字或錯(cuò)誤值都將忽略。如果要統(tǒng)計(jì)邏輯值、文字或錯(cuò)誤值,請使用函數(shù)COUNTA(COUNTIF按EXCEL的說明也行,但常出毛病)。
排序過程
假設(shè)輸入的線性表L的長度為n,L=L1,L2,..,Ln;線性表的元素屬于有限偏序集S,|S|=k且k=O(n),S={S1,S2,..Sk};則計(jì)數(shù)排序可以描述如下:
1、掃描整個(gè)集合S,對每一個(gè)Si∈S,找到在線性表L中小于等于Si的元素的個(gè)數(shù)T(Si);
2、掃描整個(gè)線性表L,對L中的每一個(gè)元素Li,將Li放在輸出線性表的第T(Li)個(gè)位置上,并將T(Li)減1。
以上內(nèi)容參考:百度百科-計(jì)數(shù)排序
python中total的用法是計(jì)數(shù)。
根據(jù)python官網(wǎng)資料顯示,total的用法是計(jì)數(shù),類似于sum,count等計(jì)算函數(shù)。
Python由荷蘭數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究學(xué)會的GuidovanRossum于1990年代初設(shè)計(jì)。
value_counts是一種查看表格某列中有多少個(gè)不同值的快捷方法,并計(jì)算每個(gè)不同值有在該列中個(gè)數(shù),類似Excel里面的count函數(shù)
其是pandas下面的頂層函數(shù),也可以作用在Series、DataFrame下
常規(guī)用法:
pandas 的 value_counts() 函數(shù)可以對Series里面的每個(gè)值進(jìn)行計(jì)數(shù) 并且 排序,默認(rèn)是降序
可以看出,既可以對分類變量統(tǒng)計(jì),也可以對連續(xù)數(shù)值變量統(tǒng)計(jì)
如果是要對結(jié)果升序排列,可以添加 ascending=True 來改變
如果不想看統(tǒng)計(jì)的個(gè)數(shù),而是想看占比,那么可以設(shè)置 normalize=True 即可,結(jié)果是小數(shù)形式
可以通過apply,對每一列變量進(jìn)行統(tǒng)計(jì)
以上是自己實(shí)踐中遇到的一些點(diǎn),分享出來供大家參考學(xué)習(xí),歡迎關(guān)注DataShare公眾號
在python中,定義一個(gè)函數(shù)要使用def語句,依次寫出函數(shù)名、括號、括號中的參數(shù)和冒號:,然后在縮進(jìn)塊中編寫函數(shù)體,函數(shù)的返回值用return語句返回
def 函數(shù)名([參數(shù)1,參數(shù)2,...,參數(shù)n]):
函數(shù)體
函數(shù)代碼以def關(guān)鍵詞開頭,后接函數(shù)標(biāo)識符名稱和圓括號():
任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)
函數(shù)的第一行語句可以選擇性的使用文檔字符串-用于存放函數(shù)說明
函數(shù)內(nèi)容以冒號起始,并且縮進(jìn)
return[表達(dá)式]結(jié)束函數(shù),選擇性的返回一個(gè)值給調(diào)用方,不帶表達(dá)式的return相當(dāng)于返回None
代碼
import xml.etree.cElementTree as ET
import xml.etree.ElementTree as ElementTree
from xml.dom.minidom import parseString
root = ET.Element("root")
doc = ET.SubElement(root, "doc")
ET.SubElement(doc, "field1", name="k1").text = "12"ET.SubElement(doc, "field2", name="k2").text = "21"tree = ET.ElementTree(root)
tree.write("filename.xml")
xml = ElementTree.tostring(root)
print(xml)
prettyxml = parseString(xml).toprettyxml()
print(prettyxml)123456789101112131415161718
輸出
b'rootdocfield1 name="k1"12/field1field2 name="k2"21/field2/doc/root'?xml version="1.0" ?root
doc
field1 name="k1"12/field1
field2 name="k2"21/field2
/doc/root12345678
? ~ cat filename.xml
rootdocfield1 name="k1"12/field1field2 name="k2"21/field2/doc/root%