Я пытаюсь создать набор столбцов (внутри фрейма данных panda), в которых имена столбцов рандомизированы.Это потому, что я хочу сгенерировать данные фильтра из большого набора данных случайным образом.
Как я могу сгенерировать N (= 4) * 3 набора имен столбцов, как показано ниже?
car_speed state_8 state_17 state_19 state_16 wd_8 wd_17 wd_19 wd_16 wu_8 wu_17 wu_19 wu_16
Мой потенциальный код ниже, но на самом деле не работает.Мне нужно сначала блоки 'состояния_', затем 'wd_', а затем 'wd_'.Мой код ниже генерирует 'state_', 'wd_', 'wu_' индивидуально в последовательном порядке.В дальнейшем у меня возникают проблемы с заполнением данных из большего набора данных
def iteration1(data, classes = 50, sigNum = 4):
dataNN = pd.DataFrame(index = [0])
dataNN['car_speed'] = np.zeros(1)
while len(dataNN.columns) < sigNum + 1:
state = np.int(np.random.uniform(0, 50))
dataNN['state_'+str(state)] = np.zeros(1) # this is the state value set-up
dataNN['wd_' + str(state)] = np.zeros(1) # this is the weight direction
dataNN['wu_' + str(state)] = np.zeros(1) # this is the weight magnitude
count = 0 # initialize count row as zero
while count < classes :
dataNN.loc[count] = np.zeros(len(dataNN.columns))
for state in dataNN.columns[1:10]:
dataNN[state].loc[count] = data[state].loc[count]
count = count + 1
if count > classes : break
return dataNN