Pandas Размер кадра данных увеличивается при записи в файл CSV - PullRequest
0 голосов
/ 16 марта 2020

Я пытаюсь создать набор данных для машинного обучения, основанный на сочетании качественных и количественных данных, которые я хранил в CSV-файле с 4,4 миллионами экземпляров. Я в основном использую get_dummies для качественных столбцов и объединяю их вместе с неизмененными количественными столбцами в более крупный кадр данных, который затем записываю в CSV-файл. Единственная проблема заключается в том, что когда я записываю новый фрейм данных в файл csv, он слишком велик, чтобы его можно было прочитать. Однако, исходя из размера файла, я бы предположил более 35 миллионов экземпляров. Я проверил размеры отдельных «столбцов», которые я объединил, и все они имеют длину 4,4 миллиона экземпляров и ширину не более 14 категорий. Даже конечный фрейм данных, который я записываю в csv, имеет длину всего 4,4 миллиона и ширину 400 категорий, но когда я записываю его в файл CSV, файл имеет длину более 35 миллионов. Кто-нибудь знает, почему это происходит?

         for name in list(df_data.columns):
            df_class = df_data[[name]]
            # handles quantitative
            if type(df_class.values[0][0]) == type(foo_int) or type(df_class.values[0][0]) == type(foo_float):
                df_new = pd.concat([df_new, df_class], axis=1, sort=False)
                print('Done with ' + name)
                print(df_class.shape)
            # handles qualitative
            elif type(df_class.values[0][0]) == type(foo_str):
                df_class = pd.get_dummies(df_class)
                df_new = pd.concat([df_new, df_class], axis=1, sort=False)
                print('Done with ' + name)
                print(df_class.shape)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...