ich bin heute über etwas gestolpert dass ich nicht ganz verstehe.
Ich lese einen Datensatz von 26 Zeilen mit je 300000 Einträgen ein.
Auf diesen möchte ich random noise legen.
Code in etwa:
Code: Alles auswählen
data_all = np.loadtxt(path1+"data_all.dat")
data_noise = data_all
for i in range(26):
data_noise[i] += np.random.normal(0,1e12,data_noise[0].size)
Habe ich aber statt
data_noise = data_all
data_noise = data_all.copy()
im code stehen dann bleibt data_all ohne noise erhalten.
Wieso ist bei variante 1 data_all mit data_noise verbunden (weiß jetzt nicht wie ich dass Ausdrücken soll)?
Ich dachte so etwas kommt bei python nicht vor.
Gruß
PS: benutze python 2.7.1
Beispiele zum Verdeutlichen (ihr habt ja nicht meine Daten):
Var1
Code: Alles auswählen
import numpy as np
import matplotlib.pyplot as mpl
data_all = np.zeros(100)
data_noise = data_all
data_noise += np.random.normal(0,1e12,data_noise.size)
mpl.plot(data_all,'r-',label='Original Data')
mpl.plot(data_noise,'b-',label='With Noise')
mpl.legend()
mpl.show()
Code: Alles auswählen
import numpy as np
import matplotlib.pyplot as mpl
data_all = np.zeros(100)
data_noise = data_all.copy()
data_noise += np.random.normal(0,1e12,data_noise.size)
mpl.plot(data_all,'r-',label='Original Data')
mpl.plot(data_noise,'b-',label='With Noise')
mpl.legend()
mpl.show()