pandas 行列的查詢遍歷刪除增加操作

2021-10-06 17:16:06 字數 3425 閱讀 1581

c1   c2

0 x c

1 c v

2 s e

# 對於每一行,通過列名name訪問對應的元素

for index,row in df.

iterrows()

:print

(index) # 輸出每行的索引值

print

(row[

'c1'

], row[

'c2'

]) # 輸出每一行

for index, row in df.

iteritems()

:print

(index) # 輸出列名

print

(getattr

(row,

'c1'),

getattr

(row,

'c2'

)) # 輸出每一行

for index, row in df.

iteritems()

:print

(index) # 輸出列名

print

(row[0]

, row[1]

, row[2]

) # 輸出各列

# 第一行資料

df.irow(0

)# 第一列

df.icol(0

)

df.iloc[-1

]

# 查詢index=index_name那一行中column=col_name的那乙個值

df.loc[index_name,col_name]

# 查詢index=index_name那一行中columns=

[col_name,col_name2]的series

df.loc[index_name,

[col_name1,col_name2]

# 查詢index=

[index_name1,index_name2,index_name3]

,column=col_name的值

df.loc[

[index_name1,index_name2,index_name3]

,col_name]

df =

dataframe

(randn(5

,2),index=

range(0

,10,2

),columns=

list

('ab'))

a b

01.068932

-0.7943072-

0.470056

1.1922114-

0.284561

0.756029

61.037563

-0.2678208-

0.538478

-0.800654

//按照index的序值

in [5]

: df.iloc[[2

]]out[5]

: a b4-

0.284561

0.756029

//按照index的具體值

in [6]

: df.loc[[2

]]out[6]

: a b2-

0.470056

1.192211

#name列名稱等於yu的所有行

df.loc[df.name==

'yu'

]

df.

loc(

[(df.name>1)

&(df.age <10)

])

# 查詢index起始位2018

-10的資料

def func

(x):

return x.index.str.

startwith

('2018-10'

)df.loc[func]

df.loc[df.index==index_name]
df.drop(index_name)
# 刪除列名稱是=name的所有行

df.drop

(df[df[

'name']==

'yu'

].index)

# 刪除第一行

df.drop

(index=

0,inplace=true)

# 刪除index=

23的行

df.drop(23

,inplace=true)

# 多條件刪除行

df.drop

(df[

(df.name ==

'yu')&

(df.age ==12)

].index)

# 替換第一行,index_name沒有就是增加一行,有就是替換index_name的一行

df.loc[index_name]=[

1,2,

3,4,

5]

# 所有的dataframe往後順延2行,開始的2行全部為nan

df.shift

(period=

2)

df.loc[index_name]=[

12,3,

4,5]

# 利用reindex先增加index的值,然後再新增series

s = df.

reindex

(df.index.

insert(0

,'name'))

df.loc[

'name']=

[1,2

,3,4

]

# 增加一行index為***,值是列表的值

s=pd.

series([

12,3,

4,5]

,columns=df.columns,name=

'***'

)df.

(s)# 沒有name的series的新增方法,新增的一行是沒有index

s = pd.

series([

1,2,

3,4]

,columns=df.columns)

df.(s,ignore_index=true)

Pandas 刪除行 列

引數說明 print 刪除行或列 dataframe.drop drop預設對原表不生效,如果要對原表生效,需要加引數 inplace true print 刪除單行 df2 df1.drop labels 0 axis預設等於0,即按行刪除,這裡表示按行刪除第0行 print df2 print ...

map常用操作 添入 刪除 查詢 遍歷

map添入元素 1 利用pairmapma ma.insert pair 2,liming 或者ma.insert make pair 2,liming 2 利用map的value typemapma ma.insert map value type 2,liming 3 利用陣列mapma ma ...

單鏈表建立,插入,刪除,查詢,遍歷操作

單鏈表建立,插入,刪除,查詢,遍歷操作 link.cpp 定義控制台應用程式的入口點。單鏈表 include stdafx.h include include using namespace std typedef struct node node 建立單鏈表 node create p new n...