ಠ_ಠ
@anonymous
偷偷說
Sun, Nov 10, 2019 8:27 PM
Mon, Nov 11, 2019 6:44 AM
3
2
萬事問噗友
python
numpy
求轉
求問要怎麼用迴圈算出矩陣中每一列分別的平均值和標準差
已解決!感謝
ಠ_ಠ
Sun, Nov 10, 2019 8:34 PM
拜託各位救救我
ಠ_ಠ
Sun, Nov 10, 2019 8:37 PM
import numpy as np
b = np.random.randn(1000,10)
然後要寫出那10行的平均值和標準差 用迴圈....
我真的不知道要怎麼用迴圈解這題
試過
for i in b[0,:]:
print(sum(b[:,0]/1000))
可是結果會變成全部一樣的10排
所以不知道該怎麼辦中
salad6437
Sun, Nov 10, 2019 8:44 PM
看不懂 幫轉
libra5287
Sun, Nov 10, 2019 8:48 PM
for i in b.shape(1):
print(sum(b[:, i])/b.shape(0))
virgo3688
Sun, Nov 10, 2019 10:45 PM
巢狀迴圈
virgo3688
Sun, Nov 10, 2019 10:47 PM
或是如libra5287那樣、去操作I
ಠ_ಠ
Mon, Nov 11, 2019 5:11 AM
libra5287: 他說 'tuple' object is not callable 沒辦法使月; ;...
virgo3688
說
Mon, Nov 11, 2019 5:12 AM
你知道迴圈在幹嘛嗎?
virgo3688
說
Mon, Nov 11, 2019 5:13 AM
你要試著把迴圈解構出來看每一圈在幹嘛
virgo3688
說
Mon, Nov 11, 2019 5:13 AM
你才知道怎麼解
virgo3688
說
Mon, Nov 11, 2019 5:13 AM
像這個題目。每一排計算的話
virgo3688
說
Mon, Nov 11, 2019 5:14 AM
第一排算第 0,1,2,3,4,5,6,7,8,9
virgo3688
說
Mon, Nov 11, 2019 5:14 AM
第二排算10,11,12,13,14,15....
virgo3688
說
Mon, Nov 11, 2019 5:14 AM
第三扯算20,21,22,23.......
virgo3688
說
Mon, Nov 11, 2019 5:14 AM
你可以看的出來其實就是 都是差10
virgo3688
說
Mon, Nov 11, 2019 5:15 AM
那單一算一排就是sum(0,9)
virgo3688
說
Mon, Nov 11, 2019 5:15 AM
第二排就是sum(10,19)--->sum(1
10,1
10+9)
virgo3688
說
Mon, Nov 11, 2019 5:16 AM
第三排就是sum(20,29)-->sum(2x10,2x10+9)
virgo3688
說
Mon, Nov 11, 2019 5:17 AM
--->sum(ix10,ix10+9) i從0到9,就可以算出所有排的sum
virgo3688
說
Mon, Nov 11, 2019 5:17 AM
avg也是一樣作法
virgo3688
說
Mon, Nov 11, 2019 5:17 AM
那每一個迴圈有sum有avg,就可以算標準差了
ಠ_ಠ
Mon, Nov 11, 2019 6:14 AM
Mon, Nov 11, 2019 6:15 AM
! 原來如此 感謝
ಠ_ಠ
Mon, Nov 11, 2019 6:15 AM
Mon, Nov 11, 2019 6:26 AM
1.
u = np.zeros(10)
print("平均值:")
for i in range(0,10):
u[i] = np.mean(b[:,i])
print(u)
2.
x = np.zeros(10)
print("標準差:")
for i in range(0,10):
x[i] = np.std(b[:,i]) print(x)
ಠ_ಠ
Mon, Nov 11, 2019 6:18 AM
還有想問分別算出這10行資料的大於1的機率和小於1的機率並記錄在array裡面要怎麼用; ;
ಠ_ಠ
Mon, Nov 11, 2019 6:19 AM
也要用迴圈; ;
virgo3688
說
Mon, Nov 11, 2019 6:27 AM
你覺得要怎麼做?先問你
virgo3688
說
Mon, Nov 11, 2019 6:28 AM
第一行資料大於1和小於1的機率怎麼算?
virgo3688
說
Mon, Nov 11, 2019 6:29 AM
記在array的第幾個位置。
ಠ_ಠ
Mon, Nov 11, 2019 6:32 AM
我正在查有要怎麼把大於1和小於1的數找出來合算有幾個...
virgo3688
說
Mon, Nov 11, 2019 6:32 AM
.....不用用方法啊
virgo3688
說
Mon, Nov 11, 2019 6:33 AM
就 if(x<1) cout++ if(x>1) countt++
virgo3688
說
Mon, Nov 11, 2019 6:33 AM
這樣就算的出來大於1和小於1有多少了啊
ಠ_ಠ
Mon, Nov 11, 2019 6:43 AM
咦等...抱 抱歉我真的看太不懂
...
我只是一個選修了線上課程的外系生...
ಠ_ಠ
Mon, Nov 11, 2019 6:44 AM
不過多虧您告訴我迴圈的用法 用剛剛解出來的結果照樣造句算出來了 感謝
ಠ_ಠ
Mon, Nov 11, 2019 6:44 AM
1.
e = np.zeros(10)
for i in range(0,10):
e[i] = (b[:,i] > 1).sum()/1000
print("大於1的機率:",e)
2.
o = np.zeros(10)
for i in range(0,10):
o[i] = (b[:,i] < 1).sum()/1000
print("小於1的機率:",o)
ಠ_ಠ
Mon, Nov 11, 2019 6:46 AM
前面一直想不通i是什麼裝飾變數 原來超好用的
載入新的回覆
求問要怎麼用迴圈算出矩陣中每一列分別的平均值和標準差
已解決!感謝b = np.random.randn(1000,10)
然後要寫出那10行的平均值和標準差 用迴圈....
我真的不知道要怎麼用迴圈解這題
試過
for i in b[0,:]:
print(sum(b[:,0]/1000))
可是結果會變成全部一樣的10排
所以不知道該怎麼辦中
print(sum(b[:, i])/b.shape(0))
u = np.zeros(10)
print("平均值:")
for i in range(0,10):
u[i] = np.mean(b[:,i])
print(u)
2.
x = np.zeros(10)
print("標準差:")
for i in range(0,10):
x[i] = np.std(b[:,i]) print(x)
我只是一個選修了線上課程的外系生...
e = np.zeros(10)
for i in range(0,10):
e[i] = (b[:,i] > 1).sum()/1000
print("大於1的機率:",e)
2.
o = np.zeros(10)
for i in range(0,10):
o[i] = (b[:,i] < 1).sum()/1000
print("小於1的機率:",o)