Xem xét dataframe sauSử dụng một từ điển để thay thế các giá trị cột trên số chỉ số đưa ra trên một dataframe gấu trúc
df_test = pd.DataFrame({'a' : [1, 2, 8], 'b' : [np.nan, np.nan, 5], 'c' : [np.nan, np.nan, 4]})
df_test.index = ['one', 'two', 'three']
mang đến cho
a b c
one 1 NaN NaN
two 2 NaN NaN
three 8 5 4
Tôi có một cuốn từ điển của thay thế hàng cho cột b và c . Ví dụ:
{ 'one': [3.1, 2.2], 'two' : [8.8, 4.4] }
nơi 3.1 và 8.8 Thay thế cột b và 2.2 và 4.4 Thay thế cột c, do đó kết quả là
a b c
one 1 3.1 2.2
two 2 8.8 4.4
three 8 5 4
Tôi biết làm thế nào để thực hiện những thay đổi này với một vòng lặp for:
index_list = ['one', 'two']
value_list_b = [3.1, 8.8]
value_list_c = [2.2, 4.4]
for i in range(len(index_list)):
df_test.ix[df_test.index == index_list[i], 'b'] = value_list_b[i]
df_test.ix[df_test.index == index_list[i], 'c'] = value_list_c[i]
nhưng tôi chắc chắn có cách sử dụng từ điển đẹp hơn và nhanh hơn!
Tôi đoán nó có thể được thực hiện với phương pháp DataFrame.replace, nhưng tôi không thể tìm ra.
Thanks for the help,
cd
Điều này phù hợp với tôi, cảm ơn rất nhiều! – cd98