Предположим, у меня есть кадр данных pandas с 2 столбцами (col_a и col_b), и каждое значение в кадре данных является очень длинной строкой.
Теперь я хочу внести изменения для экономии памяти.
1) удаление или удаление столбцов
df.drop(columns = [col_a], axis = 1)
del df[col_a]
Вышеуказанные методы эквивалентны. Освобождают ли они оба памяти, если весь столбец удален или удален?
2) Что, если я заменю все в col_b на np.nan или целые числа?
#original dataframe
df[col_b] = 'a'*100000000000000 # really long string
# change col_b's values in place
df[col_b] = 1 or df[col_b] = np.nan
Освобождает ли это память? Занимает ли указание на np.nan меньше памяти, чем целое число / число с плавающей запятой / строка?