1

次のようなパンダデータフレームがあります。

   admit   gpa  gre  rank
   0  3.61  380     3
   1  3.67  660     3
   1  4.00  800     1 
   1  3.19  640     4
   0  2.93  520     4

最初の行に新しい pandas データ フレームを設定したいのですが、元のデータ フレームは次のように保持します。

   admit   gpa  gre  rank
   0  3.61  380     5

   admit   gpa  gre  rank
   0  3.61  380     3
   1  3.67  660     3
   1  4.00  800     1 
   1  3.19  640     4
   0  2.93  520     4

私が試してみました:

df_value = pd.DataFrame(df[0:(0 + 1)])
df_value.set_value(0, 'ランク', 5)

ただし、新しいパンダの値を変更すると、元の値も変更されます。この問題の解決策はありますか?

4

1 に答える 1

1

copy() 関数を使用できます。

>>> df_value = df[:1].copy()
>>> df_value["rank"] = 5
>>> df
   admit   gpa  gre  rank
0      0  3.61  380     3
1      1  3.67  660     3
2      1  4.00  800     1
3      1  3.19  640     4
4      0  2.93  520     4
>>> df_value
   admit   gpa  gre  rank
0      0  3.61  380     5
于 2013-10-23T14:51:59.747 に答える