import pandas as pd import numpy as np import sys # sys.path.append("C:/Users/iuliia/recoUI/serv") class SequenceDataFrame: array_raw = None mat_df = None seq_df = None all_df = None sequence_seq = None type_seq = None phase_shift = None def read_raw_data(self, data): sub_arrays = [subarray for subarray in data] self.array_raw = sub_arrays[1] def read_dots(self, Np): mat_df = pd.DataFrame(self.array_raw, columns=['real', 'imag']) mat_df = mat_df.drop(mat_df.index[Np::(Np + 1)]) mat_df = mat_df.reset_index(drop=True) mat_df = mat_df.dropna() columns = [mat_df.iloc[:, i:i + 2] for i in range(0, mat_df.shape[1], 2)] mat_df = pd.concat(columns, axis=1) mat_df['dot'] = mat_df['real'] + 1j * mat_df['imag'] mat_df = mat_df[~mat_df['dot'].isna() & (mat_df['dot'] != '')] num_batches = len(mat_df) // Np index_values = np.repeat(np.arange(num_batches), Np) index_values = index_values[:len(mat_df)] mat_df['index'] = index_values self.mat_df = mat_df