001 挖透序列分解

2021-10-10 16:02:22 字數 1851 閱讀 7354

所謂序列,指的是一塊可存放多個值的連續記憶體空間,這些值按一定順序排列,可通過每個值所在位置的編號(稱為索引)訪問它們。

序列 < sequence >

聊序列分解之前,首先說一下序列有哪些,序列包含:str,list,tuple,dict,set。

下面我們逐個來看下對不同型別的序列的分解。

list

case1 = [1, '2']

a, b = case1

print(f'case1 res -> ; ')

str

case2 = '123'

a, b, c = case2

print(f'case2 res -> ; ; ')

tuple

case3 = (1, '2')

a, b = case3

print(f'case3 res -> ; ')

set

case4 = 

a, b = case4

print(f'case4 res -> ; ')

dict

case5 = 

a, b = case5

print(f'case5 res -> ; ')

不同型別組合,這種的工作上比較常用些

case6 = ['a', 'b', ('t1', 't2'), ['l1', 'l2'], ]

# 列表內的變數逐個取出

a, b, t, l, d = case6

print(f'case6_01 res -> ; ; ; ; ')

# 把列表內的sequence下的子變數也取出

a, b, (t1, t2), (l1, l2), (k1, k2) = case6

print(f'case6_02 res -> ; ; ; ; ; ; ; '

序列分解時,不需要的變數可以使用「_」來佔位

case7 = ['a', 'b', 'c', 'd', 'e']

_, _, c, _, _ = case7

print(f'case7 res -> '

最後這個可能是乙個新知識點,iterable型別的元素也可以進行分解

l1, l2 = ['a', 'b'], ['c', 'd']

case8 = zip(l1, l2)

a, b = case8

print(f'case8 res -> ; ')

上述print的輸出如下

case1 res -> 1; 2

case2 res -> 1; 2; 3

case3 res -> 1; 2

case4 res -> 1; 2

case5 res -> key1; key2

case6_01 res -> a; b; ('t1', 't2'); ['l1', 'l2'];

case6_02 res -> a; b; t1; t2; l1; l2; k1; k2

case7 res -> c

case8 res -> ('a', 'c'); ('b', 'd')

原始碼參考

時間序列分解 STL分解法

stl seasonal and trend decomposition using loess 是以魯棒區域性加權回歸作為平滑方法的時間序列分解方法。其中loess locally weighted scatterplot smoothing,lowess or loess 為區域性多項式回歸擬合...

最長連續遞增序列001

2 思路 3 notes 4 複雜度 5 code 674給定乙個未經排序的整數陣列,找到最長且連續的的遞增序列,並返回該序列的長度 輸入 1,3,5,4,7 輸出 3 解釋 最長連續遞增序列是 1,3,5 長度為3。儘管 1,3,5,7 也是公升序的子串行,但它不是連續的,因為5和7在原陣列裡被4...

時間序列分解隨筆

對於時間序列來說,傳統的時間序列 模型對於不平穩的資料是不能進行處理的,需要對時間序列進行分解,使得時間序列區域平穩,才可以進行時間序列的模擬 本次採用python的seasonal decompose分解來進行時間序列的分解。python3.6 statsmodels庫 pandas庫 matpl...