根据条件,我想更改某一列上第一行的值,到目前为止,这是我所拥有的
despesas['recibos'] =''
for a in recibos['recibos']:
if len(despesas.loc[(despesas['despesas']==a) & (despesas['recibos']==''), 'recibos'])>0:
despesas.loc[(despesas['despesas']==a) & (despesas['recibos']==''),
'recibos'].iloc[0] =a
所以我只想通过 a 上的值更改列 recibos 的第一个值,其中(despesas ['despesas'] == a) &(despesas ['recibos'] =='')
编辑1
示例:
despesas['despesas'] = [11.95, 2.5, 1.2 , 0.6 , 2.66, 2.66, 3. , 47.5 , 16.95,17.56]
recibos['recibos'] = [11.95, 1.2 , 1.2 , 0.2 , 2.66, 2.66, 3. , 47.5 , 16.95, 17.56]
结果应该是:
[[11.95, 11.95], [2.5, null] , [1.2, 1.2] , [0.6, null] , [2.66, 2.66], [2.66, 2.66], [3., 3] , [47.5, 45.5 ], [16.95, 16.95], [17.56, 17.56]]
答案 0 :(得分:0)
可能可行:
Map
答案 1 :(得分:0)
我找到了想要的解决方案
import pandas as pd
from matplotlib import pyplot as plt
df = pd.DataFrame(columns=['id', 'name', 'group', 'year', 'value'],
data=[[5827, 'Tokyo', 'Asia', 1800, 685.000000],
[864, 'Bijapur', 'India', 1649, 340.000000],
[1952, 'Hangzhou', 'Asia', 1661, 283.612500],
[769, 'Berlin', 'Europe', 1922, 3873.090909],
[3709, 'Mumbai', 'India', 1979, 8342.800000]])
df.plot(kind='barh', y='value', x='name', color='crimson')
plt.tight_layout()
plt.show()