看板 Python 關於我們 聯絡資訊
下面有用紅框框起來的 是另外想做向量內積計算的 請問我該如何取出呢? 因為return已回傳i跟j了 我另外令上面紅框=a的語法 python顯示錯誤 https://i.imgur.com/6nmZ2gc.jpg ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.238.58 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1521997259.A.3F8.html ※ 編輯: phoebejen (114.36.238.58), 03/26/2018 01:13:38
TuCH: 講清楚一點吧 看不懂你想做什麼 03/26 01:30
不好意思 講得不夠清楚 https://imgur.com/peU8OaI.jpg
就是我需要取出"計算出來i列之cov"和"計算出來j列之cov"做向量內積
Panthalassa: 天啊,為什麼函數要定義兩次?看起來都是在算標準差 03/26 02:30
因為我需要i和j的標準差最後也做內積,所以我想到的方法是這樣子 或是P大有更好的方法也請不吝指教(我是新手所以想說拆開說比較清楚) ※ 編輯: phoebejen (114.25.194.197), 03/26/2018 08:46:11
TitanEric: code有幾個問題 for i in i 不知道在算什麼, 還有如同 03/26 11:20
for i in i 是要把"#計算出來i列之cov"的這一行,i行每個值都要進行d+=(i-m)**2計算
TitanEric: 樓上 同一個function不要定義兩次 可以改成for data in 03/26 11:20
TitanEric: (i, j) 然後call function 03/26 11:20
※ 編輯: phoebejen (114.25.194.197), 03/26/2018 11:38:09
Panthalassa: 一個建議的寫法: 03/26 13:16
Panthalassa: def stdDeviation(i, j): 03/26 13:17
Panthalassa: L = len(i) (( i, j 假設長度一樣,才能內積 03/26 13:17
Panthalassa: mean_i = sum(i)/L 03/26 13:18
Panthalassa: mean_j = sum(j)/L 03/26 13:18
Panthalassa: std_i = std_j = 0 03/26 13:19
Panthalassa: for x in i: 03/26 13:20
Panthalassa: std_i += (x - mean_i)**2 03/26 13:20
Panthalassa: for x in j: 03/26 13:20
Panthalassa: std_j += (x - mean_j)**2 03/26 13:21
Panthalassa: std_i = (std_i/L)**0.5 03/26 13:21
Panthalassa: std_j = (std_j/L)**0.5 03/26 13:22
Panthalassa: inner_product = 0 03/26 13:22
Panthalassa: for x, y in zip(i, j): 03/26 13:23
Panthalassa: inner_product += x * y 03/26 13:24
Panthalassa: return std_i, std_j, inner_product 03/26 13:24
Panthalassa: https://i.imgur.com/M3gww9F.png 03/26 13:42
vfgce: 一定要自己算嗎? 有個東西叫numpy 03/26 15:19
niki25672729: 原po是不是不知道function的作用啊 之前版上有推一 03/26 16:02
niki25672729: 本教材可以看 03/26 16:02
niki25672729: thonds/index.html 03/26 16:02