16

pandas 实现两个dataframe相减的方式

 3 years ago
source link: https://blog.csdn.net/weixin_44706915/article/details/111934815
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

pandas 实现两个dataframe相减的方式

达达爱吃肉 2020-12-29 18:44:52 63
a=np.array([['北京','北方','一线','非沿海'],['杭州','南方','二线','非沿海'],['深圳','南方','一线','沿海'],['烟台','北方','三线','沿海']])
df1=pd.DataFrame(a,index=[1,2,3,4],columns=['城市','地理','级别','是否沿海'])
	城市	地理	级别	是否沿海
1	北京	北方	一线	非沿海
2	杭州	南方	二线	非沿海
3	深圳	南方	一线	沿海
4	烟台	北方	三线	沿海

假如我们把一线城市的信息拿出来

city_level_1_data = df1[df1['级别'].isin(['一线'])]

现在我们想直接拿到df1中除了city_level_1_data的全部数据

	城市	地理	级别	是否沿海
1	北京	北方	一线	非沿海
3	深圳	南方	一线	沿海
# 我们能想到的怎么做呢
df1 - city_level_1_data

结果是当然不行,没办法只能相个办法。

city_level_1_index = city_level_1_data.index.to_list()
[1, 3]

找到city_level_1_data 的索引就好办了

df1[~df1.index.isin(city_level_1_index)]
	城市	地理	级别	是否沿海
2	杭州	南方	二线	非沿海
4	烟台	北方	三线	沿海

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK