说到excel
表格中的数据处理,就不得不提到pandas
模块。这里简单分享一下pandas
模块的基础操作。这里表格文件的数据类型以xlsx
和csv
来举例。
举例1
:创建一维带标签的数组
df = pd.Series([3, -5, 7, 4], index=['a', 'b', 'c', 'd'])
print(df)
"""
reuslt:
a 3
b -5
c 7
d 4
dtype: int64
"""
可以看到一维的数据是以列的形式进行排列的
举例2
:创建二维带标签的数组
data = {"Country": ["Belgium", "india", "Brazil"], "Capital": ["Brussels", "New Delhi", "Brasilia"], "Population": [
"11190846", "1303171035", "207847528"]}
df = pd.DataFrame(data, columns=["Country", "Capital", "Population"])
print(df)
"""
reuslt:
Country Capital Population
0 Belgium Brussels 11190846
1 india New Delhi 1303171035
2 Brazil Brasilia 207847528
"""
可以看到这里我们创建了一个二维数据,其中列标签沿着横向排列。索引值沿着纵向排列。
举例3
:对于一维数组获取单个数据值
# 通过标签获得单个值
df = pd.Series([3, -5, 7, 4], index=['a', 'b', 'c', 'd'])
print(df['a'])
"""
reuslt:
3
"""
# 通过索引获得单个值
print(df[0])
"""
reuslt:
3
"""
我们通过标签或者索引均成功地获得了单个数据值
举例4
:对于二维数组获得单个数据
data = {'Country': ['Belgium', 'india', 'Brazil'], 'Capital': ['Brussels', 'New Delhi', 'Brasilia'], 'Population': [
'11190846', '1303171035', '207847528']}
df = pd.DataFrame(data, columns=['Country', 'Capital', 'Population'])
print(df.iloc[0, 0])
print(df.iat[0, 0])
"""
result:
Belgium
Belgium
"""
可以看到,通过DataFrame.iloc()
和DataFrame.iat()
方法我们均成功地获取到了二维数组中的单个数据值。
举例5
:获取DataFrame
子集合的值
data = {'Country': ['Belgium', 'india', 'Brazil'], 'Capital': ['Brussels', 'New Delhi', 'Brasilia'], 'Population': [
'11190846', '1303171035', '207847528']}
df = pd.DataFrame(data, columns=['Country', 'Capital', 'Population'])
print(df[1:])
"""
result:
Country Capital Population
1 india New Delhi 1303171035
2 Brazil Brasilia 207847528
"""
可以看到, 我们成功获取到了索引值大于1
的原始DataFrame
中的所有值。
举例5
:通过标签获得单行的值
data = {'Country': ['Belgium', 'india', 'Brazil'], 'Capital': ['Brussels', 'New Delhi', 'Brasilia'], 'Population': [
'11190846', '1303171035', '207847528']}
df = pd.DataFrame(data, columns=['Country', 'Capital', 'Population'])
print(df.loc[[0]])
"""
result:
Country Capital Population
0 Belgium Brussels 11190846
"""
可以看到,我们成功获取到了单行的值。
举例6
:通过标签获得单列的值
data = {'Country': ['Belgium', 'india', 'Brazil'], 'Capital': ['Brussels', 'New Delhi', 'Brasilia'], 'Population': [
'11190846', '1303171035', '207847528']}
df = pd.DataFrame(data, columns=['Country', 'Capital', 'Population'])
print(df[['Country']])
"""
result:
Country
0 Belgium
1 india
2 Brazil
"""
可以看到,我们成功获取到了单列的值。
关于提取数据时参数为什么要带中括号的原因可以看这篇pandas中提取单行单列数据时的参数问题(超链接点击跳转)。
码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~