新聞中心
Python 基本操作- 數(shù)據(jù)選取loc、iloc、ix函數(shù)
loc中的數(shù)據(jù)是列名,是字符串,所以前后都要取;iloc中數(shù)據(jù)是int整型,所以是Python默認(rèn)的前閉后開
我們提供的服務(wù)有:成都網(wǎng)站制作、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、蒲江縣ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的蒲江縣網(wǎng)站制作公司
構(gòu)建數(shù)據(jù)集df
loc函數(shù)主要通過行標(biāo)簽索引行數(shù)據(jù) ,劃重點, 標(biāo)簽!標(biāo)簽!標(biāo)簽!
loc[1] 選擇行標(biāo)簽是1的(從0、1、2、3這幾個行標(biāo)簽中)
loc[0:1] 和 loc[0,1]的區(qū)別,其實最重要的是loc[0:1]和iloc[0:1]
索引某一列數(shù)據(jù),loc[:,0:1],還是標(biāo)簽,注意,如果列標(biāo)簽是個字符,比如'a',loc['a']是不行的,必須為loc[:,'a']。
但如果行標(biāo)簽是'a',選取這一行,用loc['a']是可以的。
iloc 主要是通過行號獲取行數(shù)據(jù),劃重點,序號!序號!序號!
iloc[0:1],由于Python默認(rèn)是前閉后開,所以,這個選擇的只有第一行!
如果想用標(biāo)簽索引,如iloc['a'],就會報錯,它只支持int型。
ix——結(jié)合前兩種的混合索引,即可以是行序號,也可以是行標(biāo)簽。
如選擇prize10(prize為一個標(biāo)簽)的,即 df.loc[df.prize10]
還有并或等操作
python選取特定列——pandas的iloc和loc以及icol使用
pandas入門——loc與iloc函數(shù)
pandas中l(wèi)oc、iloc、ix的區(qū)別
pandas基礎(chǔ)之按行取數(shù)(DataFrame)
python將txt文件中的字符和數(shù)字單獨提取
1、打開pycharm編輯器。
2、在文件中寫上這個程序的注釋。
3、新建一個變量test8。test8="my name is luo"。
4、利用replace函數(shù)將字符串中的my換成you,test8.replace('my','you')。
5、將結(jié)果打印出來。
6、在窗口中選擇"run"-"run"。
7、運行這個程序,這時候語句就變成了you name is luo。
python中如何從字符串中提取數(shù)字?
1、如下圖,要提取#后面的字符,也即紅色的“SDK”到B列。
2、首先,在B2中輸入公式:
=FIND("#",A2)
返回#在字符串中的位置,#在A2單元格文本中是第6個字符。
3、知識點說明:
FIND()函數(shù)查找第一參數(shù)在第二參數(shù)中的位置。如下圖,查找“B”在“ABCD”中是第幾個字符。第一參數(shù)是要查找的字符“B”,第二參數(shù)是被查找的字符串。最終返回“B”在“ABCD”中是第2個字符。
4、然后,在B2中輸入公式:
=MID(A2,FIND("#",A2)+1,99)
這樣,就提取出了#后的字符。
5、知識點說明:
MID()函數(shù)返回從字符串中制定字符開始若干個字符的字符串。如下圖,MID()函數(shù)返回“ABCDE”字符串中從第2個字符開始的連續(xù)3個字符,也就是返回“BCD”。
6、綜上,=MID(A2,FIND("#",A2)+1,99)的意思就是從A2單元格#字符后面的一個字符起,取長度為99的字符串。其中的99是一個較大的數(shù)字,能涵蓋#后字符的最大長度即可。
Python獲取函數(shù)參數(shù)個數(shù)和默認(rèn)參數(shù)
創(chuàng)建一個函數(shù)用來計算三個數(shù)的和,如下:
下來,我們對其進行調(diào)用:
假設(shè)我們要計算這個函數(shù)返回結(jié)果的平均值。那么此時,我們只需將和值除以參數(shù)個數(shù)即可,那么參數(shù)個數(shù)怎么獲取呢?你可能會說:數(shù)一下就知道了。那么假設(shè)此時有很多的參數(shù),你還去數(shù)嗎?此時,明顯這個方法是不恰當(dāng)?shù)模敲从袥]有更加方便、高效的方法呢?我們接著往下看。
通過上面這個例子,我們不但可以獲取參數(shù)個數(shù),還可以獲取所有變量名以及默認(rèn)返回值。此時,我們只需根據(jù)自己的需求,去應(yīng)用就可以了,那么以上的問題,就自然解決了。
python如何將字符串里有數(shù)字和文字怎么提取數(shù)字
從字符串“127米”中提取數(shù)字127:
方法一、利用正則表達式
用法:
##?總結(jié)##?^?匹配字符串的開始。##?$?匹配字符串的結(jié)尾。##?\b?匹配一個單詞的邊界。##?\d?匹配任意數(shù)字。##?\D?匹配任意非數(shù)字字符。##?x??匹配一個可選的?x?字符?(換言之,它匹配?1?次或者?0?次?x?字符)。##?x*?匹配0次或者多次?x?字符。##?x+?匹配1次或者多次?x?字符。##?x{n,m}?匹配?x?字符,至少?n?次,至多?m?次。##?(a|b|c)?要么匹配?a,要么匹配?b,要么匹配?c。##?(x)?一般情況下表示一個記憶組?(remembered?group)。你可以利用?re.search?函數(shù)返回對象的?groups()?函數(shù)獲取它的值。##?正則表達式中的點號通常意味著?“匹配任意單字符”
[plain]?view plain?copy
import?re
string?=?u'127米'
print?re.findall(r"\d+\.?\d*",?string)
方法二、利用filter(str.isdigit, iterable)
[plain]?view plain?copy
string?=?u'127米'
print?(filter(str.isdigit,?string))
bug:TypeError: descriptor 'isdigit' requires a 'str' object but received a 'unicode'
原因:string不是str類型
修改為:
[plain]?view plain?copy
string?=?u'127米'
string2?=?string.encode('gbk')
print?(type(str))
print?(filter(str.isdigit,?string2))
結(jié)果:
type 'str'
127
注意:要提取的字符串不能命名為str,否則會出現(xiàn)TypeError: isdigit() takes no arguments (1 given)
因為str和filter里的str重名了。
問下Python用for循環(huán)怎么將字符串中的所有數(shù)字提取出來?(不用正則表達式)
str1 = 'abc123efg456'
for i in str1:
if i.isdigit() == True:
print(i)
isdigit()函數(shù)判斷一個字符是否為數(shù)字
本文標(biāo)題:Python提取數(shù)字函數(shù) python怎么提取數(shù)字
本文URL:http://www.ef60e0e.cn/article/hisios.html