@victafonenko

Как рандомно перемешать данные столбцов в csv файле?

Задача: рандомно перемешивать строки в каждом столбце CSV таблицы. Какие есть способы, подскажите пожалуйста.

Подробнее: К примеру есть большой массив со спарсенными данными. Скажем так - в первом столбике имена, во втором фамилии, в третьем улица проживания, в четвертом номер дома, в пятом телефон. И мне нужно каждый раз перемешивать содержимое столбцов чтобы получать уникальные сгенерированные "личности".

Столбцы большие, по 10 тысяч строк в каждом. Выборка берется из первых 5 тысяч строк. Ну это уже детали.
  • Вопрос задан
  • 2246 просмотров
Пригласить эксперта
Ответы на вопрос 3
maaGames
@maaGames
Погроммирую программы
1. Откройте в Excel
2. Добавьте строку и заполните её случайными числами
3. Отсортируйте столбцы по значению этой строки со случайными числами.
4. Повторите для каждой строки таблицы (если каждая строка длжна быть отсортирована индивидуально)
5. Удалите строку со случайными числами
6. Профит.

А вообще, непонятен смысл действа. Если все данные перемешивать, то может просто случайными числами заполнить?
Ответ написан
dimonchik2013
@dimonchik2013
non progredi est regredi
если без программирования:

1) https://www.textpad.com/
2) f9 (Sort) и играешься во всех трех сортировках одновременно, можно несколько раз, меняя длины

если с программированием

#-*- coding:utf-8 -*-
import random

filename='c:/filename.csv'
f=open(filename)
lines = f.readlines()
f.close()
random.shuffle(lines)
f=open(filename,'w')
f.writelines(lines)
f.close()
Ответ написан
sgjurano
@sgjurano
Разработчик
def shuffle(df, n=1, axis=0):     
     df = df.copy()
     for _ in range(n):
         df.apply(np.random.shuffle, axis=axis)
     return df

df = pandas.read_csv('your_file.csv')
shuffle(df)

Отсюда: stackoverflow.com/a/15772356
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы