我有一个三个.txt文件,我已经成功地将它变成一个numpy数组。如果您好奇这些文件是来自高级组合实验(ACE)的Level 2数据。这些特定的文件可以在MAG和SWEPAM部分找到,分别为16秒平均值和64秒平均值。坚果壳中的数据代表了入站粒子场的z分量磁场,它的组成部分是通过测量每个区域的计数以及其速度。目前研究的重点是入境氢气,但我离题了。的代码如下我使用读取和保存文件(以及修正任何错误)下面提供:如何将一个numpy数组的选择添加到一个空numpy数组中
Bz = np.loadtxt(r"/home/ary/Desktop/Arya/Project/Data/AC/MAG/ACE_MAG_Data_SEPT_18_2015.txt", dtype = bytes).astype(float)
SWEPAM_HV = np.loadtxt(r"/home/ary/Desktop/Arya/Project/Data/ACE/SWEPAM/Proton_Density/ACE_SWEPAM_H_Density_20150918.txt", dtype = bytes).astype(float)
SWEPAM_HD = np.loadtxt(r"/home/ary/Desktop/Arya/Project/Data/ACE/SWEPAM/Proton_Speed/ACE_SWEPAM_H_Velocity_20150918.txt",dtype = bytes).astype(float)
Bz = np.ma.masked_array(Bz, Bz <= -999, fill_value = 0)
SWEPAM_HD = np.ma.masked_array(SWEPAM_HD, SWEPAM_HD <= -999, fill_value = 0)
SWEPAM_HV = np.ma.masked_array(SWEPAM_HV, SWEPAM_HV <= -999, fill_value = 0)
Mag_time = np.arange(0,86400, 16, dtype = float)
SWEPAM_time = np.arange(0,86400,64, dtype = float)
然而,这些阵列内我在仅第一千三百四十九位置向第二千○二十四位置特别感兴趣。由于我对这两点之间发生的异常进行了调查,这些数字很有意思。所以我认为以下将导致我成功。它没有和许多变化也失败了。我为大家介绍最新的剧本我现在所拥有的:
Mag_time_prime = np.array([])
Bz_prime = np.array([])
for i in range(1349,2024):
append(Mag_time_prime,Mag_time[i]).astype(float)
append(Bz_prime,Bz[i]).astype(float)
print(Mag_time_prime.shape)
print(Bz_prime.shape)
我曾计算过,通过使空数组(我曾尝试np.empty(0)
为素数,并不能得到这工作对我来说),我可以只需做一个for循环来定位的位置,并将Bz
和Mag_time
的位置追加到指定范围内的空'prime'数组中。然而,'prime'数组不断弹出空数组。所以我的问题,我在哪里出错了,我应该如何解决它?
**请勿使用'numpy.append' **。如果您必须附加,请使用列表。如果您必须使用数组追加,请按照记录使用它, – hpaulj
我如何不按预期使用'numpy.append'?该文件说,第一个位置是你想追加的列表,第二个是你想追加到该列表的值。我想追加的列表是质数中的一个,我希望追加的值是相应数组的第i个位置。 – anabstudent
但'np.append'返回一个值,即2个数组的连接。 'alist.append()'改变'alist'(in-place)。这就是我说为什么不使用它的重要原因。人们错误地将它用作附加列表。 – hpaulj