问题:希望二维数组中的每一格都包含多个数据,每个数据有不同的名字,能够被方便的存取。
那么pandas中的多层索引就很适合。
import numpy as np
import pandas as pd
from pandas import Series,DataFrame
data = [[0,1,3,0,1,0],
[0,1,0,0,1,0],
[0,1,0,0,1,0],
[0,1,0,0,1,0]]
df4 = DataFrame(data,# = np.random.randint(0,150,size = (6,6)),
columns = pd.MultiIndex.from_product([[0,1,2],['flag','number']]),
index = [0,1,2,3])
print(df4)
print(df4.loc[0][1,'flag'])
print('-'*10)
# 批量修改数据
for i in range(3):
if(df4.loc[1][i,'flag']==0):
df4.loc[1][i,'number'] = 4
print(df4)
运行结果:
借鉴来源:pandas层次化索引