Изменение нового столбца в кадре данныхPython

Программы на Python
Anonymous
Изменение нового столбца в кадре данных

Сообщение Anonymous »

У меня возникли проблемы с изменением нового столбца.

Код: Выделить всё

import pandas as pd
import numpy as np

da=np.array([[[1,2], 1,2,100],[[1,2], 1,3,100],[[1,2], 4,1,100], [[1,2], 5,6,101], [[1,2], 7,9,102], [[1,2], 8,7,102]])

col = ['N', 'NRW', 'NRW_1', 'NRW_2']

ramka = pd.DataFrame(columns = col, data = da)
print (ramka)

ramka['TEST'] = ramka['NRW'].apply(lambda x: x+3)
print (ramka)
Здесь все в порядке. Я получаю новый столбец с NRW+3. NRW не изменился.

Код: Выделить всё

ramka['TEST2'] = ramka['N'].apply(lambda x: x.append(555))
print (ramka)
Здесь я получаю новый столбец со значением «Нет». Столбец N изменен. Почему?
Если я сделаю копию столбца N

Код: Выделить всё

ramka['TEST4'] = ramka['N']
и выполните ту же операцию с новым столбцом, изменения будут применены как к столбцам N, так и к TEST4

Код: Выделить всё

ramka['TEST4'].apply(lambda x: x.append(666))
print (ramka)
Я не понимаю. Пожалуйста, помогите.


Подробнее здесь: https://stackoverflow.com/questions/790 ... -dataframe

Вернуться в «Python»