
import numpy as npa1=[1,2,3]a2=[4,5,6]a3=[7,8,9]A=[a1,a2,a3]#A1=[[1,2,3],[4,5,6],[7,8,9]]A2=np.array(A)

获取的形式:数据结构变量名称[标识]A--列表,A[i],i--标识(索引/index)A--数组,A[i,j] i--行号,j--列号,共同确定唯一的元素值
A[2,2]对于混合数据形式的二维表,可以采用数据框来存储,通过导入pandas包实现。示例代码如下
D={'姓名':['小明','小李','小江','小记','小红','小涛','小黄','小文'],'科目':['语文','语文','语文','语文','语文','语文','语文','语文'],'成绩':[95,85,98,90,88,73,86,75]}import pandas as pdD1=pd.DataFrame(D)

数据框中元素获取:数据框变量名.iloc[行下标,列下标],如果取所有行,行下标用“:”(英文输入格式),同理取所有列,列下标也用“:”(英文输入格式)。
d1_73=D1.iloc[5,2]c2=D1.iloc[:,2]
一维数据,通过单一的标识(索引)可提取元素值,比如列表、元组和字典。二维数据,需要通过行下标和列下标,才能精确定位其元素值,并提取出来。上例中D1这个数据框行下标(索引)为0~7,列标(索引)别列名称覆盖掉了,其实列标(索引)也是从0开始依次编号的,D1数据框中“姓名”列为第0列,“科目”列为第1列,“成绩”列为第2列。比如D1.iloc[5,2]=73。而D1.iloc[:,2]取的是第2列,取出来变为序列,它由索引、值和列标签名组成。

print(c2.name)print(c2.values)print(list(c2.index))
成绩[95 85 98 90 88 73 86 75][0, 1, 2, 3, 4, 5, 6, 7]
print(D1.columns)print(D1.values)print(list(D1.index))
Index(['姓名', '科目', '成绩'], dtype='object')[['小明' '语文' 95]['小李' '语文' 85]['小江' '语文' 98]['小记' '语文' 90]['小红' '语文' 88]['小涛' '语文' 73]['小黄' '语文' 86]['小文' '语文' 75]][0, 1, 2, 3, 4, 5, 6, 7]
"""计算张明、李红、王周,三位客户2018-02月的总消费额数据见:用户消费数据.xlsx"""

import pandas as pdA=pd.read_excel('用户消费数据.xlsx')s1=A.iloc[3,3]+A.iloc[4,3]+A.iloc[5,3]s2=A.iloc[9,3]+A.iloc[10,3]+A.iloc[11,3]s3=A.iloc[15,3]+A.iloc[16,3]+A.iloc[17,3]print(s1,s2,s3)
600 850 910s1=0for i in range(3,6):s1=s1+A.iloc[i,3]print(s1)
6001.用for循环,计算其总交易量和每笔的平均交易量(交易量为0的也参与计算)2.用for循环和if条件判断语句,计算其总交易量和每笔的平均交易量(交易量为0的不也参与计算)数据表为:“数据表_新.xlsx”,截图为部分数据

import pandasA=pandas.read_excel('数据表_新.xlsx')s=0cont=0for i in range(len(A)):s=s+A.iloc[i,3]if A.iloc[i,3]!=0:cont=cont+1avg_s=s/len(A)avg_c=s/contprint(avg_s,avg_c)
21478.883280757098 22822.813407821228