「Pandas」基础学习笔记
in 学习笔记 with 0 comment

「Pandas」基础学习笔记

in 学习笔记 with 0 comment

原文出自【易百教程

Series/系列

创建Series

pandas.Series( data, index, dtype, copy)

data: 数据可以是数组和字典等;

index: 索引值,要求与数据长度相同;

dtype: 数据类型;

copy: 复制数据。

示例

s = pd.Series([1,3,5,np.nan,6,8])# nan  缺失值
print(s)			

输出

0    1.0
1    3.0
2    5.0
3    NaN
4    6.0
5    8.0
dtype: float64

通过ndarray创建

示例

import pandas as pd 
import numpy as np 
data = np.array(['a','b','c','d']) 
s = pd.Series(data) 
print(s)

输出

0    a
1    b
2    c
3    d
dtype: object

通过字典创建

字典(dict)可以作为输入传递,如果没有指定索引,则按排序顺序取得字典键以构造索引。 如果传递了索引,索引中与标签对应的数据中的值将被拉出。

示例

import pandas as pd 
import numpy as np 
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data)
print(s) 

输出

a 0.0 
b 1.0 
c 2.0
dtype: float64

通过标量创建

如果数据是标量值,则必须提供索引。

将重复该值以匹配索引的长度。

示例

import pandas as pd 
import numpy as np 
s = pd.Series(5, index=[0, 1, 2, 3]) 
print(s)

输出

0  5 
1  5 
2  5 
3  5 
dtype: int64

DataFrame/数据帧

数据帧(DataFrame)是二维数据结构,即数据以行和列的表格方式排列。

数据帧(DataFrame)的功能特点:

  • 潜在的列是不同的类型
  • 大小可变
  • 标记轴(行和列)
  • 可以对行和列执行算术运算

创建DataFrame

pandas.DataFrame( data, index, columns, dtype, copy)

data : 数据采取各种形式

index : 对于行标签,要用于结果帧的索引是可选缺省值np.arrange(n),如果没有传递索引值。

columns : 对于列标签,可选的默认语法是 - np.arange(n)。 这只有在没有索引传递的情况下才是这样。

dtype : 每列的数据类型。

copy : 如果默认值为False,则此命令(或任何它)用于复制数据。

示例

import pandas as pd 
data = [1,2,3,4,5]
df = pd.DataFrame(data)
print(df)

输出

     0
0    1
1    2
2    3
3    4
4    5

通过字典创建

示例

import pandas as pd
data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42]}
df = pd.DataFrame(data)
print(df)

输出

      Age      Name 
0     28        Tom 
1     34       Jack 
2     29      Steve 
3     42      Ricky

通过系列的字典创建

示例

import pandas as pd 
d = {
    'one' : pd.Series([1, 2, 3], index=['a', 'b', 'c']), 
    'two' : pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])} 
df = pd.DataFrame(d) 
print(df)

输出

      one    two
a     1.0    1
b     2.0    2
c     3.0    3
d     NaN    4

列添加

向现有数据框添加一个新列。

示例

import pandas as pd

d = {
    'one' : pd.Series([1, 2, 3], index=['a', 'b', 'c']),
     'two' : pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])}

df = pd.DataFrame(d)

# Adding a new column to an existing DataFrame object with column label by passing new series

print("Adding a new column by passing as Series:")
df['three']=pd.Series([10,20,30],index=['a','b','c'])
print(df)

print("Adding a new column using the existing columns in DataFrame:")
df['four']=df['one']+df['three']

print(df)

输出

Adding a new column by passing as Series:
     one   two   three
a    1.0    1    10.0
b    2.0    2    20.0
c    3.0    3    30.0
d    NaN    4    NaN

Adding a new column using the existing columns in DataFrame:
      one   two   three    four
a     1.0    1    10.0     11.0
b     2.0    2    20.0     22.0
c     3.0    3    30.0     33.0
d     NaN    4     NaN     NaN

列删除

列可以删除或弹出

示例

import pandas as pd

d = {'one' : pd.Series([1, 2, 3], index=['a', 'b', 'c']), 
     'two' : pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd']), 
     'three' : pd.Series([10,20,30], index=['a','b','c'])}

df = pd.DataFrame(d)
print("Our dataframe is:")
print(df)

# using del function
print("Deleting the first column using DEL function:")
del df['one']
print(df)

# using pop function
print("Deleting another column using POP function:")
df.pop('two')
print(df)

输出

      one   three  two
a     1.0    10.0   1
b     2.0    20.0   2
c     3.0    30.0   3
d     NaN     NaN   4

Deleting the first column using DEL function:
      three    two
a     10.0     1
b     20.0     2
c     30.0     3
d     NaN      4

Deleting another column using POP function:
   three
a  10.0
b  20.0
c  30.0
d  NaN

持续更新中...