0
点赞
收藏
分享

微信扫一扫

基于卡尔曼滤波进行四旋翼动力学建模(Simulink&Matlab)

目录

0.环境

1.适用场景

2.pandas.merge()函数详细介绍

3.名词解释“数据对齐”(来自chatGPT3.5)

4.本文将给出两种数据对齐的例子

1)dataframe类型数据和dataframe类型数据对齐(对齐NAME列);

数据对齐前的两组数据集:

数据对齐后的数据集(通过pandas.merge()函数对齐):

代码

2)dataframe类型数据和geopandas类型数据对齐(对齐STATE_NAME字段);

数据对齐前的两组数据集(两个数据集都有很多行,这里只截取其中一部分):

 数据对齐后得到一组geopandas类型数据:

 代码


0.环境

1.适用场景

2.pandas.merge()函数详细介绍

3.名词解释“数据对齐”(来自chatGPT3.5)

4.本文将给出两种数据对齐的例子

1)dataframe类型数据和dataframe类型数据对齐(对齐NAME列);

  • 数据对齐前的两组数据集:

  • 数据对齐后的数据集(通过pandas.merge()函数对齐):

 可以看到两个数据集A和B通过NAME字段进行了对齐

  • 代码

import pandas as pd

# 创建第一个DataFrame
data1 = {'ID': [1, 2, 3],
         'NAME': ['Alice', 'Bob', 'Charlie'],
         'AGE': [25, 30, 35]}
df1 = pd.DataFrame(data1)
print(df1)
print("\n")

# 创建第二个DataFrame
data2 = {'ID': [1, 2, 3],
         'NAME': ['Bob', 'Charlie', 'Alice'],
         'CITY': ['New York', 'London', 'Paris']}
df2 = pd.DataFrame(data2)
print(df2)
print("\n")


# 使用merge方法对齐两个DataFrame的'NAME'列
merged_df = pd.merge(df1, df2, on='NAME')

# 打印对齐后的DataFrame
print(merged_df)

2)dataframe类型数据和geopandas类型数据对齐(对齐STATE_NAME字段);

  • 数据对齐前的两组数据集(两个数据集都有很多行,这里只截取其中一部分):

  •  数据对齐后得到一组geopandas类型数据:

可以看到通过STATE_NAME字段,将两个数据集合成了一个geopandas类型的数据集,具体是将两个数据集的所有列根据STATE_NAME字段排序并整合进一个数据集内,还有很多行和列,无法在一个界面显示,这里只截取一部分

  •  代码

注意:代码运行前需要安装对于的模块,如pysal 、geopandas、libpysal等,可以在【Anaconda prompt中用pip install XXX命令下载】

具体下载过程可以参考博客:

下载geopandas包

import pysal as ps
import geopandas as gpd
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

# your code here
from libpysal import examples

#2009年的人均收入数据
income_data  = examples.get_path('usjoin.csv')
#用pandas读数据
usincome = pd.read_csv(income_data)

#重命名dataframe数据(usincome)的Name列
usincome.rename(columns={'Name':'STATE_NAME'}, inplace=True)
# print(type(usincome))
print("对齐前dataframe类型数据:\n")
print(usincome)

#48个州的形状
us_states  = examples.get_path('us48.shp')
us48 = gpd.read_file(us_states )
# print(type(us48))
print("\n对齐前geopandas类型数据:\n")
print(us48)

#数据对齐  STATE_NAME
merged_gdf = us48.merge(usincome, on='STATE_NAME')
# print(type(merged_gdf))
print("\n对齐后geopandas类型数据:\n")
print(merged_gdf)

参考:

(35条消息) python pandas.merge()函数 详解_python中merge函数用法_Late whale的博客-CSDN博客pandas数据合并之一文弄懂pd.merge() - 知乎 (zhihu.com)(35条消息) python pandas.merge()函数 详解_python中merge函数用法_Late whale的博客-CSDN博客

--END--

举报

相关推荐

0 条评论