前面我介紹了可視化的一些方法以及機器學(xué)習(xí)在預(yù)測方面的應(yīng)用,分為分類問題(預(yù)測值是離散型)和回歸問題(預(yù)測值是連續(xù)型)(具體見之前的文章)续崖。
從本期開始躏敢,我將做一個數(shù)據(jù)分析類實戰(zhàn)的系列文章春感,列舉一些在平時數(shù)據(jù)處理中遇到的一些小問題,提供一個解決方案顶吮,讓讀者慢慢理解python數(shù)據(jù)分析的原理和方法社牲,每一篇文章從實現(xiàn)功能、實現(xiàn)代碼悴了、實現(xiàn)效果三個方面進行展示搏恤。
實現(xiàn)功能:
實現(xiàn)一維列表(數(shù)組)和多維列表(數(shù)組)的相互轉(zhuǎn)化。
實現(xiàn)代碼:
#=======多位列表(數(shù)組)轉(zhuǎn)化為一維列表(數(shù)組)==================
# 方法1:利用數(shù)組的flatten
import numpyas np
mulArrays = [[1,2,3],[4,5,6],[7,8,9]]
print(list(np.array(mulArrays).flatten()))
# 方法2:列表推導(dǎo)式
mulArrays = [[1,2,3],[4,5,6],[7,8,9]]
print([ifor arrin mulArraysfor iin arr])
#=======一維列表(數(shù)組)轉(zhuǎn)化為多維列表(數(shù)組)==================
# 方法1:利用numpy
import numpyas np
x = [1, 2, 3, 4, 5, 6, 7, 8, 9]
Y = np.array(x).reshape(3, 3)
X=[]
for iin Y:
X.append(list(i))
print(X)
# 方法2:疊加法自定義各個維度
s = [1, 2, 3, 4, 5, 6, 7, 8, 9]
x =2;y =2;z =3
a = []; b = [];c = []
for iin s:
if len(a) < x:
a.append(i)
continue
? ? if len(b) < y:
b.append(a)
a = []
b.append(i)
else:
continue
? ? if len(c) < z:
c.append(b)
b = []
else:
continue
print(c)
實現(xiàn)效果:
本人讀研期間發(fā)表5篇SCI數(shù)據(jù)挖掘相關(guān)論文湃交,現(xiàn)在在某研究院從事數(shù)據(jù)挖掘相關(guān)工作熟空,對數(shù)據(jù)挖掘有一定的認(rèn)知和理解,會不定期分享一些關(guān)于python機器學(xué)習(xí)搞莺、深度學(xué)習(xí)息罗、數(shù)據(jù)挖掘基礎(chǔ)知識與案例。致力于只做原創(chuàng)才沧,以最簡單的方式讓你理解和學(xué)習(xí)它們迈喉,關(guān)注V數(shù)據(jù)雜壇獲取源代碼和相關(guān)數(shù)據(jù)與我一起交流成長绍刮。