通过在numpy中均匀间隔

时间:2018-06-19 14:17:01

标签: python arrays numpy

我是python和stackoverflow的新手,并且我正在从事一个处理具有不同长度的手动创建的数组的项目。

path = '/home/Documents/Noise'
files = glob.glob(path + '/*.txt')
data_noise = []
for file in files:
    df = pd.read_csv(file, delimiter=',', header=None)
    df = df.values
    m,n = df.shape
    df = np.reshape(df,m)
    data_noise.append(df)

我创建了一个列表data_noise来存储numpy数组,每个数组的长度都不同m。我想从每个数组中选择子数组,以使它们具有相同的长度(例如100)。但是,我不想在每个数组中选择前100个元素或后100个元素,而是希望均匀地间隔并在每个数组中进行选择。

例如,对于长度为300的数组,我需要索引为0、3、6、9,...;对于长度为500的数组,我需要索引为0、5、10、15等。

我该如何修改我的代码?

1 个答案:

答案 0 :(得分:0)

它不是numpy,但是在一般的Python中应该可以。

distance = 100 / m
sub_list = df[0::distance]

假设您添加了一些检查并可能进行了四舍五入。