1.series是在pandas庫**現的資料結構,適用於科學計算。
每個series物件實際上都有兩個互相關聯的陣列組成,其中主陣列用來存放資料,主陣列的每個元素都有乙個與之相關聯的標籤,這些標籤儲存在另乙個叫作index的陣列中,如果不指定索引,預設生成的索引是0到n-1。通過series物件的values和index屬性分別獲得對應的值和索引。
import pandas as pd
obj = pd.series([6, 2, -2, 0])
print obj
print obj.dtype
print obj.values
print obj.index
輸出:
0 61 2
2 -2
3 0int64
[ 6 2 -2 0]
array([0, 1, 2, 3], dtype=int64)
2.建立series
# 利用實數
a = pd.series(3, index=list("abc"))
# 利用列表
b = pd.series(list("he"))
# 利用元組
c = pd.series(tuple("he"))
# 利用ndarray陣列
d = pd.series(np.zeros(3))
# 利用字典
e = pd.series()
print a, '\n', b, '\n', c, '\n', d, '\n', e, '\n'
輸出:
a 3b 3
c 30 h
1 e0 h
1 e0 0
1 02 0
age 12
name wang
3.series與字典的關係
series不僅可以從字典建立,也可以認為series是乙個長度固定且有序的字典。series將索引值和資料值按位置配對,在使用字典的上下文中都可以使用series,通過字典生成series,預設自動排序,也可以指定索引順序。沒有資料的補nan,沒有索引的排除。
4.series物件屬性
series的name屬性。索引的name屬性,索引值也可以通過賦值方式改變。
aa = pd.series([1, 2, 3], index=list("abc"))
aa.name = "newname"
aa.index.name = "newindex"
aa.index =["aa", 'bb', 'cc']
print aa
輸出:
aa 1
bb 2
cc 3
name: newname
5.series物件的numpy風格操作
series本質上是乙個numpy的陣列,因此numpy的陣列處理函式可以直接對series進行處理。可以使用布林值陣列進行過濾,與標量相乘,應用數學函式,索引值不會參與運算。
o = pd.series([1, 2, -1, 0])
print o*2
print o[o > 0]
print np.exp(o)
輸出:
0 21 4
2 -2
3 00 1
1 20 2.718282
1 7.389056
2 0.367879
3 1.000000
大資料Python基礎之檔案讀寫
1.python處理的各種型別的資料,通過內建資料結構如列表 字典等在計算機記憶體中進行處理加工,最後必須要存入外部儲存器中永久儲存。2.檔案是乙個儲存在輔助儲存器上的資料序列 檔案是常用的儲存形式 檔案可以包含任何資料內容 檔案的型別分為文字檔案和二進位制檔案,文字由單一特定編碼的字串構成,二進位...
python大資料 numpy基礎
在資料分析中常會用到三個包,numpy,pandas,scipy 其中numpy包通常用來處理矩陣,它的處理速度比列表要高效的多,scipy是用來科學計算的包,包括線性代數和統計,而pandas是基於numpy的一款資料分析工具。numpy是資料結構的n維的陣列物件叫做ndarry 匯入numpy包...
大資料基礎
hadoop是提供分布式的儲存 乙個檔案被拆分成很多個快,並且以副本的反式儲存在各個節點中 和計算。分布式檔案系統 hdfs實現將檔案分布式儲存在很多的伺服器上。hdfs特點 擴充套件性 容錯性 海量數量儲存 工作機制 將檔案切分為指定大小的資料塊並以多副本儲存在多個機器上。資料切分 多副本 容錯等...