如何将多个一维列表转化为二维列表_数据分析2_如何处理一维、二维数据
生活随笔
收集整理的這篇文章主要介紹了
如何将多个一维列表转化为二维列表_数据分析2_如何处理一维、二维数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
吞一塊大餅,還不如切成小塊吃得香
常見的數據集,要么是數列,要么是表格;
因此,數據分析最首要的是,處理一維、二維數據。
主要知識點可參考如圖。
如需要,可點擊以下百度網盤鏈接下載數據分析基礎知識圖PDF:
mindmap2_數據分析基礎.pdf308.7K · 百度網盤數據分析常用第三方包
- Numpy
- Pandas
- Matplotlib
1. 一維數據
- Numpy(Numerical Python): Array
- Pandas: Series
1.1 Numpy-Array
#定義:一維數組array #參數:一個列表[2,3,4,5] a = np.array([2,3,4,5])#查詢 a[0] 2#切片訪問:獲取指定序號范圍的元素 #a[1:3]獲取到的是序號從1到3的元素 a[1:3] array([3, 4])#切片訪問:反序 a[::-1] array([5, 4, 3, 2])#循環訪問 for i in range(len(a)):print(a[i]) 2 3 4 5#循環訪問 for i in a: # 獲取a數組里面的數據,從i=2開始print(a[i-2]) 2 3 4 5#循環訪問 for i in a:print(i) 2 3 4 5#查看數據類型 a.dtype dtype('int32')#統計計算:平均值 a.mean() 3.5#統計計算:標準差 a.std() 1.118033988749895#向量化計算:向量相加 b=np.array([1,2,3]) c=np.array([4,5,6]) b+c array([5, 7, 9])#向量化計算:乘以標量 d=b*4 d array([ 4, 8, 12])區別:Numpy數組&Python列表
- 1.處理多維數組
- ndArray
- list嵌套
- 2.存儲、運算效率
- Array > list
- 3.元素數據類型
- Array:必須相同
- List:可不同
1.2 Pandas-Series
#定義:一維數據結構:Series,index為索引 #存放6家公司某一天的股價(單位是美元) stockS=pd.Series([54.74,190.9,173.14,1050.3,181.86,1139.49],index=['騰訊','阿里巴巴','蘋果','谷歌','Facebook','亞馬遜']) stockS#獲取描述統計信息 stockS.describe()統計信息含義如下
- 數據條數count
- 平均值mean
- 標準差std
- 最小值min下四位數25%
- 中位數50%
- 上四位數75%
- 最大值max
2.二維數據
- Numpy: Array
- Pandas: DataFrame
- DataFrame處理表格數據比較方便
2.1 Numpy-Array
#定義二維數組 a=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12] ])#訪問:獲取元素 #行號0,列號2 a[0,2] 3#訪問:整行 #獲取第1行 a[0,:] array([1, 2, 3, 4])#訪問:整列 #獲取第1列 a[:, 0] array([1, 5, 9])#數軸參數 axis #axis=0,down,縱向處理 #axis=1,across,橫向處理#所有平均值 print(a.mean())#每行平均值,即每一行取所有列的平均值 print(a.mean(axis=1))#刪除某一列,即列(集)沿著水平的方向依次刪掉 #a.drop(colNames,axis=1)6.5 [ 2.5 6.5 10.5]2.2 Pandas-DataFrame
#定義 #第1步:定義一個字典,映射列名與對應列的值 #現Python3的字典對象為有序 salesDict={'購藥時間':['2018-01-01 星期五','2018-01-02 星期六','2018-01-06 星期三'],'社??ㄌ?#39;:['001616528','001616528','0012602828'],'商品編碼':[236701,236701,236701],'商品名稱':['強力VC銀翹片','清熱解毒口服液','感康'],'銷售數量':[6,1,2],'應收金額':[82.8,28,16.8],'實收金額':[69,24.64,15] }#第2步:定義數據框DataFrame salesDf=pd.DataFrame(salesDict) salesDf#平均值:是按每列來求平均值 salesDf.mean()#訪問:iloc屬性用于根據下標獲取值 #查詢第1行第2列的元素 salesDf.iloc[0,1] '001616528'#獲取第1行,:代表所有列 salesDf.iloc[0,:]#獲取第1列,:代表所有行 salesDf.iloc[:,0]#訪問:loc屬性用于根據索引名獲取值 #查詢第1行商品編碼列的元素 salesDf.loc[0,'商品編碼'] 236701#獲取“商品名稱”這一列 #salesDf.loc[:,'商品名稱'] salesDf['商品名稱'] #簡單方法3.查詢操作
3.1 查詢列
#指定列 #通過列表來選擇某幾列的數據 salesDf[['商品名稱','銷售數量']]#指定連續的列 #通過切片功能,獲取指定范圍的列 salesDf.loc[:,'購藥時間':'銷售數量']3.2 條件篩選
#第1步:構建查詢條件,對象是Series,數據元素是bool querySer=salesDf.loc[:,'銷售數量']>1 type(querySer) pandas.core.series.SeriesquerySer#第2步:應用查詢條件 #只能指定列 #Error:salesDf.loc[:,querySer] salesDf.loc[querySer]salesDf.loc[querySer,'商品編碼':'銷售數量']#多個條件刪選 querySer1=salesDf.loc[:,'商品名稱']!='感康' salesDf.loc[querySer1&querySer]上一章:
Queenie:數據分析1_入門Python?zhuanlan.zhihu.com總結
以上是生活随笔為你收集整理的如何将多个一维列表转化为二维列表_数据分析2_如何处理一维、二维数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机工作对身体有害吗,在电脑前长时间工
- 下一篇: python爬虫开发 从入门到实战 pd