成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python 數據分析:Pandas 數據操作(一)

大數據 數據分析
在掌握了Pandas的數據結構后,接下來應該學會如何操作數據?,F在讓我們來看看在Pandas中如何定位和操作數據。

在掌握了Pandas的數據結構后,接下來應該學會如何操作數據?,F在讓我們來看看在Pandas中如何定位和操作數據。

1. 一般操作

首先,我們應該知道當某個變量名指向Pandas數據時(或者理解為Pandas格式數據賦值給變量),其對應就可以使用Pandas的方法,這是類的特性。

# Series數據格式賦值給變量s
s = pd.Series([1,2,3])
# DataFrame數據格式賦值給變量df
df = pd.DataFrame([[1,2],[3,4]],columns=['a','b'])

通過上面的賦值后,變量s、df就各自獲得了對于Pandas數據格式的操作方法??梢允褂胔ead()、tail()方法查看其數據的前或后5條記錄。

>>>s.head()
01
12
23
dtype: int64
>>>df.head()
ab
01  2
1  3  4

對于不同的數據格式,可以通過index和column定位到元素。一般通過.iloc[]切片方法定位,不同的軸在方括號內用逗號隔開。如下:

>>> s.iloc[1]  # Series的具體元素
2
>>> s.iloc[1:]  # Series的連續元素切片
1    2
2    3
dtype: int64
>>> df.iloc[1,1]  # DataFrame的具體元素
4
>>> df.iloc[1,:]  # DataFrame的某行切片(Series),也可以多行(DataFrame)
a    3
b    4
Name: 1, dtype: int64
>>> df.iloc[:,0]  # DataFrame的某列切片(Series),也可以多行(DataFrame)
0    1
1    3
Name: a, dtype: int6

這里要注意,Series數據格式是一維數據,只有index索引;DataFrame數據格式是二維數據,有index和column索引。.iloc[]方法一般是按照自然數索引定位數據的,有時我們明確知道index、column的索引值,希望用具體的索引值定位,這時我們可以用.loc[]方法。

>>> df.loc[1,'b']  # DataFrame的具體元素
4
>>> df.loc[1,:]  # DataFrame的某行切片(Series),也可以多行(DataFrame)
a    3
b    4
Name:1, dtype: int64
>>> df.loc[:,'b']  # DataFrame的某列切片(Series),也可以多行(DataFrame)
02
14
Name: b, dtype: int64

到這里,我們已經知道如何使用.iloc[]、.loc[]方法進行元素、切片處理,另外,要記住方括號內是接受python切片風格的。

可以通過shape屬性,查看其大小。

>>> s.shape
(3,)
>>> df.shape
(2, 2)

可以通過dtypes屬性,查看變量類型。

>>> s.dtypes
dtype('int64')
>>> df.dtypes
a    int64
b    int64
dtype: object

可以通過decribe()方法,查看變量的簡單描述統計。默認會列出元素數量,平均值,標準差,極值和四分位數。

>>> s.describe()
count    3.0
mean     2.0
std      1.0
min      1.0
25%      1.5
50%      2.0
75%      2.5
max      3.0
dtype: float64
>>> df.describe()
ab
count  2.000000  2.000000
mean   2.000000  3.000000
std    1.414214  1.414214
min    1.000000  2.000000
25%    1.500000  2.500000
50%    2.000000  3.000000
75%    2.500000  3.500000
max    3.000000  4.000000

2. 篩選

對于數據篩選,這里直接通過案例進行講解。首先生成100條數據,然后按照需求篩選數據。

# 生成演示數據
>>> s = pd.Series(np.random.random(100))
>>> df = pd.DataFrame(np.random.random(200).reshape(100,2),
...                   columns=['a','b'])


# 篩選s中>0.95的數據
>>> s[s>0.95]
40.954258
90.975997
110.997384
190.970825
400.961048
930.971340
dtype: float64


# 篩選df中'a'列元素值>0.95的行
>>> df[df['a']>0.95]
           a         b
160.9627330.817430
290.9995350.549727
510.9953340.097591
540.9522940.138212
940.9851170.959374


# 篩選df中'a'列元素值不小于0.95的行
>>> df[~(df['a']<=0.95)]
           a         b
160.9627330.817430
290.9995350.549727
510.9953340.097591
540.9522940.138212
940.9851170.959374


# 篩選df中'a'或'b'列元素值>0.95的行
>>> df[(df['a']>0.95) | (df['b']>0.95)]
           a         b
6   0.445481  0.958583
16  0.962733  0.817430
29  0.999535  0.549727
37  0.501890  0.960820
51  0.995334  0.097591
54  0.952294  0.138212
59  0.357409  0.983461
94  0.985117  0.959374


# 篩選df中'a'和'b'列元素值均>0.9的行
>>> df[(df['a']>0.9) & (df['b']>0.9)]
           a         b
94  0.985117  0.959374

要篩選某個pandas變量中的元素,只需要在變量后面加方括號,并在括號內寫入條件即可。這里要注意,多個條件時應將每個條件用圓括號括起來,之間可以用與&、或|、非~連接。

3. 修改

對于數據修改,這里直接通過案例進行講解。首先生成5條數據,然后按照需求修改數據。

# 生成演示數據
>>> df = pd.DataFrame(np.random.random(10).reshape(5,2),
...                   columns=['a','b'])
>>> df
          a         b
00.4985220.895257
10.056069  0.873136
20.7289030.627868
30.3203840.909901
40.1754440.284480


# 將b列的數據修改為1
>>> df['b']=1
>>> df
          a  b
00.4985221
10.056069  1
20.7289031
30.3203841
40.1754441


# 將b列的數據修改為a列的10倍數
>>> df['b']=df['a']*10
>>> df
          a         b
00.4985224.985216
10.056069  0.560688
20.7289037.289034
30.3203843.203838
40.1754441.754438


# 如果a列的值>0.5,則b列值為1,否則為0。
>>> df['b']=df.apply(lambda x:1 if x['a']>0.5 else 0,axis='columns')
>>> df
          a  b
00.4985220
10.056069  0
20.7289031
30.3203840
4  0.175444  0

上述數據修改的方法要重點掌握apply(),它可以接受函數處理數據。這里是用了1個匿名函數(,并按照columns軸進行數據分析,然后賦值給b列。

責任編輯:趙寧寧 來源: Python知識驛站
相關推薦

2025-07-09 07:50:00

2017-09-01 09:52:20

PythonPandas數據分析

2025-06-06 08:35:41

2020-06-05 14:29:07

PythonPandas數據分析

2024-01-09 13:58:22

PandasPython數據分析

2023-11-21 09:11:31

2023-01-28 10:09:00

Pandas數據分析Python

2022-11-11 11:35:14

2020-04-21 10:11:03

Python數據分析Pandas

2024-04-09 08:47:34

PandasRollingPython

2019-09-02 15:12:46

Python 開發數據分析

2022-07-08 06:01:37

D-Tale輔助工具

2019-11-04 15:00:01

DatatableR語言數據科學

2021-12-24 10:45:19

PandasLambda數據分析

2022-06-28 22:13:33

Polars數據處理與分析

2023-12-10 14:06:04

數據庫pythonduckdb

2022-03-24 09:36:28

Pandas數據分析代碼

2025-04-02 09:33:01

2020-03-19 15:11:14

Pandas數據分析代碼

2023-02-08 07:44:56

Pandas數據分析
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕亚洲一区 | 国产免费xxx| www.色五月.com | www.狠狠干 | 成年人视频免费在线观看 | 欧美成人激情视频 | 国产欧美日韩二区 | 欧美日韩综合一区 | 日本精品一区 | 国内精品久久精品 | 国产高清视频 | 99久久久久久久 | 久久久久久久电影 | 韩日精品一区 | 天天视频一区二区三区 | 亚洲精品第一国产综合野 | 国产高清视频一区 | 国产黑丝av | 久久久久久国产精品免费免费狐狸 | 999久久久久久久 | 精品丝袜在线 | 丝袜美腿一区 | 精品久久精品 | 在线观看www视频 | 97av视频在线观看 | 亚洲欧美在线视频 | 国产亚洲欧美在线 | av中文字幕网 | 久久国色 | 国产精品久久欧美久久一区 | 成年人在线电影 | 不用播放器看的av | 午夜精品久久久久久久久久久久久 | 国产 日韩 欧美 在线 | 久久久国产一区二区三区 | 黄色日本视频 | 久久久久国产精品午夜一区 | 日韩影音 | 91精品久久久久久久久久小网站 | 在线欧美亚洲 | 99re视频在线 |