from math import *
import sqlite3
ages=sqlite3.connect('person.sqlite3')
def main():
ageslist=ages.execute("SELECT age from person")
#average age
for row in ageslist:
row[0]
average = (sum(row[0]))/len(row[0])
#subtracts average x from x or opposite and square, depending on n
for n in range(len(ageslist) - 1):
if numbers[n] > average:
numbers.append((ageslist[n] - average)**2)
if numbers[n] < average:
numbers.append((average - ageslist[n])**2)
#takes square rt of the sum of all these numbers and divides by n-1
Stdv = math.sqrt(sum(ageslist))/(len(ageslist)-1)
end=time()
print(Stdv)
main()
SQLite3 dbからの年齢の標準偏差を求めようとしています。しかし、私は、現在のエラーを取得しています: は平均=(SUM(行[0]))/ LEN(行[0]) はTypeError:「int型のオブジェクトが反復可能ではありません標準偏差のためのPythonコードSQLite3のデータ
は、どのように私はこれを修正することができますか?あなたがageslist=ages.execute("SELECT age from person")
あなたageslist変数を実行
数学計算にご協力いただきありがとうございます。それはそれほど複雑ではありませんでした。これらの変更により、エラーが発生しました。TypeError:平均を計算するときに、サポートされていないオペランドの型が+: 'int'と 'str'に対応しています。 –
大歓迎です。それがそうだと感じたら、答えに印をつけてください。 – James