常用index表示行,columns表示列
'''
? 語文? 數學? 英語
0? 110? 105 99
1? 105 88? 115
2? 109? 120? 130
'''
# print(df.columns)? # Index(['語文', '數學', '英語'], dtype='object')
# print(df.index)? # Int64Index([0, 1, 2], dtype='int64')
# 遍歷DataFrame數據的每壹列
'''
0 110
1 105
2 109
Name: 語文, dtype: int64
0 105
1 88
2 120
Name: 數學, dtype: int64
0 99
1 115
2 130
Name: 英語, dtype: int64
'''
1.創建壹個DataFrame對象
pandas.DataFrame(data,index,columns,dtype,copy)
# data表示數據,可以是ndarray數組,series對象、列表、字典等
# index表示行標簽(索引)
# columns表示列標簽(索引)
# dtype每壹列數據的數據類型
# copy用於復制數據
# 返回值DataFrame
通過二維數組創建成績表
'''
? 語文? 數學? 英語
0? 110? 105 99
1? 105 88? 115
2? 109? 120? 130
'''
2.通過字典創建DataFrame對象
value值只能是壹維數組或單個的簡單數據類型
# 數組,則要求所有的數組長度壹致
# 單個數據,每行都需要添加相同數據
'''
? 語文? 數學? 英語 班級
0? 110? 105? 109? 高壹7班
1? 105 88? 120? 高壹7班
2 99? 115? 130? 高壹7班
'''
'''
DataFrame屬性
values 查看所有元素的值? df.values
dtypes 查看所有元素的類型? df.dtypes
index 查看所有行名、重命名行名? df.index df.index=[1,2,3]
columns 查看所有列名、重命名列名? df.columns? df.columns=['語','數']
T 行列數據轉換? df.T
head 查看前n條數據,默認5條 df.head()? df.head(10)
tail 查看後n條數據,默認5條 df.tail()? df.tail(10)
shape 查看行數和列數,[0]表示行,[1]表示列 df.shape[0]? df.shape[1]
info 查看索引,數據類型和內存信息 df.info
DataFrame函數
describe 查看每列的統計匯總信息,DataFrame類型? df.describe()
count 返回每壹列中的非空值的個數 ? df.count()
sum ? 返回每壹列和和,無法計算返回空值 ? df.sum()
max ? 返回每壹列的最大值 df.max()
min ? 返回每壹列的最小值 df.min()
argmax? 返回最大值所在的自動索引位置 df.argmax()
argmin? 返回最小值所在的自動索引位置 df.argmin()
idxmax? 返回最大值所在的自定義索引位置 ? df.idxmax()
idxmin? 返回最小值所在的自定義索引位置 ? df.idxmin()
mean 返回每壹列的平均值 df.mean()
median? 返回每壹列的中位數 df.median()
var ? 返回每壹列的方差 ? df.var()
std ? 返回每壹列的標準差? df.std()
isnull? 檢查df中的空值,空值為True,否則為False,返回布爾型數組? df.isnull()
notnull? 檢查df中的空值,非空值為True,否則為False,返回布爾型數組? df.notnull()
中位數又稱中值,是指按順序排列的壹組數據中居於中間位置的數
方差用於度量單個隨機變量的離散程序(不連續程度)
標準差是方差的算術平方根,反映數據集的離散程度
'''
3. 導入.xls或.xlsx文件
# pandas.read_excel(io,sheetname=0,header=0,names=None,index_col=None,usecols=None,squeeze=False,dtype=None,engine=None,converters=None,true_values=None,false_values=None,skiprows=None,nrow=None,na_values=None,keep_defalut_na=True,verbose=False,parse_dates=False,date_parser=None,thousands=None,comment=None,skipfooter=0,conver_float=True,mangle_dupe_cols=True,**kwds)
'''
io 字符串,xls或xlsx文件路徑或類文件對象
sheet_name:None、字符串、整數、字符串列表或整數列表,默認值為0
字符串用於工作表名稱;整數為索引,表示工作表位置
字符串列表或整數列表用於請求多個工作表,為None時則獲取所有的工作表
sheet_name = 0 第壹個Sheet頁中的數據作為DataFrame對象
sheet_name = 1 第二個Sheet頁中的數據作為DataFrame對象
sheet_name = 'Sheet1' 名為Sheet1的Sheet頁中的數據作為DataFrame對象
sheet_name = [0,1,'Sheet3'] 第壹個,第二個和名為Sheet3的Sheet頁中的數據作為DataFrame對象
header:指定作為列名的行,默認值為0,即取第壹行的值為列名。或數據不包含列名,則為header=None
names:默認值為None,要使用的列名列表
index_col:指定列為索引列,默認值為None,索引0是DataFrame對象的行標簽
usecols:int、list或字符串,默認值為None
如為None,則解析所有列
如為int,則解析最後壹列
如為list列表,則解析列號和列表的列
如為字符串,則表示以逗號分隔的Excel列字母和列範圍列表
squeeze:布爾值,默認為False,如果解析的數據只包含壹列,則返回壹個Series
dtype:列的數據類型名稱為字典,默認值為None
skiprows:省略指定行數的數據,從第壹行開始
skipfooter:省略指定行數的數據,從尾部數的行開始
4.導入指定Sheet頁的數據
# sheet_name=0表示第壹個sheet頁的數據,以此類推,如果不指定,則導入第壹頁
5.指定行索引導入Excel數據
'''
Empty DataFrame
Columns: []
Index: [1, 3, 5]
'''
# 導入第壹列數據
'''
Empty DataFrame
Columns: []
Index: [1, 3, 5]
'''