程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Pandas數據分析10——數據迭代

編輯:Python

 參考書目:《深入淺出Pandas:利用Python進行數據處理與分析》


pandas的數據如果要循環去對每行或每列操作,要迭代操作如下。

先讀取案例數據

import numpy as np
import pandas as pd
import datetime
data = 'https://www.gairuo.com/file/data/dataset/team.xlsx'
df = pd.read_excel(data) 

Series迭代

for i in df.name:
print(i)
for i,n,q in zip(df.index,df.name,df.Q1):
print(i,n,q)

df.iterrows() 

#按行迭代,返回索引和行數據
for index, row in df.iterrows():
print(index, row['name'], row.team, row.Q1)

df.itertuples()

#可以生成一個 namedtuples 類型數據,非常方便使用:
for row in df.itertuples():
print(row)
# Pandas(Index=0, name='Liver', team='E', Q1=89, Q2=21, Q3=24, Q4=64)
for row in df.itertuples(index=False):
print(row)
# Pandas(name='Liver', team='E', Q1=89, Q2=21, Q3=24, Q4=64)
for row in df.itertuples(index=False, name='Gairuo'): # namedtuples
print(row)
# Gairuo(name='Liver', team='E', Q1=89, Q2=21, Q3=24, Q4=64)
# 使用
for row in df.itertuples():
print(row.Index, row.Q1)

df.items()

#df.items()和df.iteritems()功能相同
for label, ser in df.items():
print(label)
print(ser[:2],end='\n')

 


按列迭代

# 依次取出每個列
for column in df:
print(df[column])
# 可對每個列的內容進行迭代
for column in df:
for i in df[column]:
print(i)
# 當然,可以迭代指定列
for i in df.name:
print(i)
# 一個方法,只迭代想要的列
l = ['name', 'Q1']
cols = df.columns.intersection(l)
for col in cols:
print (col)


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved