python pandas dataframe 按行和列遍历数据的几种方式
iterrows(): 按行遍历,将DataFrame的每一行迭代为(index, Series)对,可以通过row[name]对元素进行访问。
itertuples(): 按行遍历,将DataFrame的每一行迭代为元祖,可以通过row[name]对元素进行访问,比iterrows()效率高。
iteritems():按列遍历,将DataFrame的每一列迭代为(列名, Series)对,可以通过row[index]对元素进行访问。
for index, row in df.iterrows():
print(index) # 输出每行的索引值
# 对于每一行,通过列名name访问对应的元素
for row in df.iterrows():
print(row['c1'], row['c2']) # 输出每一行
# 按行遍历itertuples():
for row in df.itertuples():
print(getattr(row, 'c1'), getattr(row, 'c2')) # 输出每一行
# 按列遍历iteritems():
for index, row in df.iteritems():
print(index) # 输出列名
for row in df.iteritems():
print(row[0], row[1], row[2]) # 输出各列
file_columns = df.columns.tolist()
for column in file_columns:
bool_index = df[column].str.contains("w")
filter_data = df[column][bool_index]
print(filter_data)
# 按行遍历数据
for indexs in data.index:
print(data.loc[indexs].values[0:])
# 按列遍历数据
for indexs in data.columns:
print(data[indexs])