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