title: Geopandas: different .sjoin() results with different projections systems
body: <p>I tried to run a spatial join between a list of assets and a river basin dataset that you can find at the link below
  <a href="https://datasets.wri.org/dataset/aqueduct-global-flood-risk-maps?msclkid=630fc948b63611ec9931936b22cf4990" rel="nofollow noreferrer">https://datasets.wri.org/dataset/aqueduct-global-flood-risk-maps?msclkid=630fc948b63611ec9931936b22cf4990</a></p>
  <p>The first approach was a join on an ESPG 4326 projection setting and it works fine.</p>
  <pre><code>rfd = r&quot;C:\Users\~\aqueduct_global_flood_risk_data_by_river_basin_20150304.shp&quot;
  wri_rfr = gpd.read_file(rfd, crs='epsg:4326')
  
  test = ['Unit 1', 'Unit 2' ]
  test_lat = ['0.176095', '-24.193790']
  test_lon = ['117.495523', '150.370650']
  
  df = pd.DataFrame()
  df['Name'] = test
  df['Latitude'] = test_lat
  df['Longitude'] = test_lon
  gdf = gpd.GeoDataFrame(df, geometry=gpd.points_from_xy(df['Longitude'], df['Latitude']))
  gdf = gdf.set_crs('epsg:4326')
  
  joined = gpd.sjoin(gdf, wri_rfr, how='inner')
  len(joined )
  </code></pre>
  <p>The two assets have both a join.</p>
  <p>In a second approach, I try to create a 500 mt buffer around my assets using a meter-based projection system  (3006) and proceed to merge them...but it returns no result?</p>
  <pre><code>rfd = r&quot;C:\Users\~\aqueduct_global_flood_risk_data_by_river_basin_20150304.shp&quot;
  wri_rfr = gpd.read_file(rfd, crs='epsg:4326')
  
  test = ['Unit 1', 'Unit 2' ]
  test_lat = ['0.176095', '-24.193790']
  test_lon = ['117.495523', '150.370650']
  
  df = pd.DataFrame()
  df['Name'] = test
  df['Latitude'] = test_lat
  df['Longitude'] = test_lon
  gdf = gpd.GeoDataFrame(df, geometry=gpd.points_from_xy(df['Longitude'], df['Latitude']))
  gdf = gdf.set_crs('epsg:4326')
  
  gdf = gdf.to_crs({'init': 'epsg:3006'})
  gdf.geometry = gdf.geometry.buffer(500)
  gdf = gdf.loc[gdf.is_valid]
  wri_rfr_3006  = wri_rfr.to_crs({'init': 'epsg:3006'})
  wri_rfr_3006  =  wri_rfr_3006.loc[wri_rfr_3006.is_valid]
  
  
  joined = gpd.sjoin(gdf, wri_rfr_3006 , how='inner')
  len(joined )
  </code></pre>
  <p>it returns no joins.</p>
  <p>What am I missing here? Why would be the results different?</p>