У меня есть фрейм данных со строками значений, которые были объединены, но разделены запятой.
Row1 foo, bar, test, case
Row2 base, ball, basket, foot
Цель состоит в том, чтобы перемешивать / рандомизировать значения каждого поля, сохраняя порядок строк (не перемешивайте столбцы, индекс должен быть сохранен). как это:
Row1 тест, foo, case, bar
Row2 мяч, фут, основание, корзина
РЕШЕНИЕ НАЙДЕНО:
Original_DF = # Our csv loaded data - the DF contains multiple columns of data attached to primary
data_list=[e for e in Original_DF['Data_List']] # each 'Data_List' field was one long string with a comma seperating words, we needed to make them a list
Shuff_DF=pd.DataFrame()
for i in range(len(data_list)):
myList=np.random.permutation(data_list[i].split(","))
myString = ",".join(myList)
Shuff_DF = Shuff_DF.append({'Data_List2': myString}, ignore_index=True)
Original_DF['Data_List2']=Shuff_DF['Data_List2'] # Append newly shuffled Lists to original df