1
同じインデックス値を持つ行を含むインデックスのあるデータフレームがあります。今私はそのデータフレームをスライスし、行インデックスに基づいて値を設定したいと思う。インデックス値が重複しているスライスに正しくアクセスする
は、次の例を考えてみましょう:
import pandas as pd
df = pd.DataFrame({'index':[1,2,2,3], 'values':[10,20,30,40]})
df.set_index(['index'], inplace=True)
df1 = df.copy()
df2 = df.copy()
#copy warning
df1.iloc[0:2]['values'] = 99
print(df1)
df2.loc[df.index[0:2], 'values'] = 99
print(df2)
DF1は、予想される結果であるが、私にSettingWithCopyWarningを与えます。 df2は、文書によるアクセスの推奨方法だと思われますが、重複したインデックスのために私に間違った結果をもたらします。
重複したインデックス値を正しく設定するための適切な方法がありますか? ?
@Bharath - ありがとうございます。 – jezrael
心配していません。良い一日を持っています:) – Dark
spot on、thanks :) –