1. 程式人生 > >【pandas】[1] Series 入門(建立和增刪改查)

【pandas】[1] Series 入門(建立和增刪改查)

作者:lianghc

地址:http://blog.csdn.net/zutsoft/article/details/51482573

Series 是pandas兩大資料結構中(DataFrame,Series)的一種。使用pandas 前需要將pandas 模組引入,因為Series和DataFrame用的次數非常多,所以將其引入本地名稱空間中會更方便。

from pandas import Series, DataFrame
import pandas as pd

因此,一般在程式碼中看到pd.,都指的是pandas。

1.建立Series

Series的定義:Series是一種類似於一維陣列的物件,它由一組資料(各種NumPy資料型別)以及一組與之相關的資料標籤(即索引)組成。

       Series物件本質上是一個NumPy的陣列,因此NumPy的陣列處理函式可以直接對Series進行處理。但是Series除了可以使用位置作為下標存取元素之外,還可以使用標籤下標存取元素,這一點和字典相似。每個Series物件實際上都由兩個陣列組成:

index: 它是從NumPy陣列繼承的Index物件,儲存標籤資訊。
values: 儲存值的NumPy陣列。

注意三點:

 1. Series是一種類似於一維陣列(陣列:ndarray)的物件

 2. 它的資料型別沒有限制(各種NumPy資料型別)

 3. 它有索引,把索引當做資料的標籤(key)看待,這樣就類似字典了(只是類似,實質上市陣列)

 4.Series同時具有陣列和字典的功能,因此它也支援一些字典的方法

建立陣列,例如:

In [1]:arr=[1,2,3,4] #建立陣列

In [2]:arr
Out[2]: [1, 2, 3, 4]

建立Series:
series_1=Series(arr)
series_1
Out[146]: 
0    1
1    2
2    3
3    4
dtype: int64
series_2=Series([1,2,3,4])
series_2
Out[148]: 
0    1
1    2
2    3
3    4
dtype: int64

建立包含多種資料型別的Series:
series_3=Series([1,2,'3',4,'a'])  <span style="font-family: Arial, Helvetica, sans-serif;">#包含數字和字串</span>
series_3
Out[150]: 
0    1
1    2
2    3
3    4
4    a
dtype: object  #型別變成了字串

2.Series索引

Series建立後會自動生成索引,預設從0開始

可以指定和修改索引

In [154]: series_4.index=['a','b','c']

In [155]: series_4
Out[155]: 
a    1
b    2
c    3

修改索引除了這裡的直接修改還有一個reindex()方法。


3.Series增刪改查

Series建立後可以對資料進行增刪改查

3.1 增:

Series的add()方法是加法計算不是增加Series元素用的。

使用append連線其他Series


3.2刪:

In [162]: series_4.drop('a')
Out[162]: 
b    2
c    3
dtype: int64

3.3 改:

In [170]: series_4['a']=4

In [171]: series_4
Out[171]: 
a    4
b    2
c    3
dtype: int64

3.4 查:

通過索引查單值

In [172]: series_4['a']
Out[172]: 4

通過索引序列查多值:

series_4[['a','b']]
Out[174]: 
a    4
b    2
dtype: int64

通過布林型別索引篩選:

In [175]: series_4[series_4>2]
Out[175]: 
a    4
c    3
dtype: int64

通過位置切片和標籤切片查詢資料:

series_4
Out[194]: 
a    4
b    2
c    3
dtype: int64

series_4[:2]
Out[195]: 
a    4
b    2
dtype: int64

series_4['a':'c']
Out[196]: 
a    4
b    2
c    3
dtype: int64

4.通過字典建立Series

series_5=Series({'a':1,'b':2,'c':3})

series_5
Out[201]: 
a    1
b    2
c    3
dtype: int64

相關推薦

pandas[1] Series 入門(建立刪改)

作者:lianghc 地址:http://blog.csdn.net/zutsoft/article/details/51482573 Series 是pandas兩大資料結構中(DataFrame,Series)的一種。使用pandas 前需要將pandas 模組引入,因

Django中ORM表的建立刪改方法示例

Django中ORM表的建立和增刪改查方法示例 Django作為重量級的Python web框架,在做專案時肯定少不了與資料庫打交道,程式設計人員對資料庫的語法簡單的還行,但過多的資料庫語句不是程式設計人員的重點物件。因此用ORM來操作資料庫相當快捷。今天來介紹一下

單鏈表的建立刪改程式碼及講解

//---單鏈表的單鏈式儲存結構---- typedef struct LNode { ElemType data; struct LNode *next; }LNode,*LinkList; //1.初始化 int Initlist(LinkList L) { L

pandas[2] DataFrame 基礎,建立DataFrame刪改基本操作(1

作者:lianghc 地址:http://blog.csdn.net/zutsoft         DataFrame 是pandas最常用的資料結構,類似於資料庫中的表,不過DataFrame不僅僅限制於2維,可以建立多維資料表。DataFrame既有行索引,也有列

整理1、C網G網雙模手機是否可同時支援C網G網上網?2、上網的同時是否可以打電話?3、呼叫等待呼叫保持的概念與“雙通”手機

【問題一】C網和G網雙模手機是否可同時支援C網和G網上網? 這個以華為的兩款手機為例,華為出了兩款雙模手機:S8600和G330C(C8825D),這兩款手機均是C網和G網雙模,支援電信的3G網,只支援移動(聯通)的2G網,且手機預設是隻支援C網上網的。 那麼S8600和G

spring1.spring ioc原理demo

我們先做一個簡單的spring例子。 面向介面程式設計,我們先來定介面 IHelloWorld package com.services; public interface IHelloWorld { public void sayHello(); } 寫

unity3d 天空盒的建立使用

天空盒:周圍環境,天空。注意不是地形一:建立天空盒材質1、先建立材質,材質裡的Shader裡找Skybox有3個製作方式,但是他們的渲染效果一樣,只是製作方式不一樣2、以第一種6sided為例 有6個面,分別是6個對應的方向,需要是無縫拼接的,圖片可以在網上找選擇對應的6圖片

Hibernate的入門之配置檔案刪改

首先使用maven匯入jar包,然後配置主xml檔案 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Confi

Visual Basic列表控制元件ListView的刪改、模態對話方塊、禁止視窗調整大小

列表控制元件ListView是窗體中核心元件之一,在各種窗體程式得到廣泛應用。在《【mfc】學生資訊管理,實現List控制元件節點的增刪改查》(點選開啟連結)中極其難以實現列表控制元件ListView的增刪改查,在vb中可以輕鬆實現,下面舉一個列子來說明這個問題。 如上圖

oracle資料庫建立及刪除表空間、使用者刪改

資料庫 檢視sql資料庫中的所有表空間 select * from dba_data_files; 刪除表空間 SQL> drop tablespace db_data including contents and datafiles;

2017-6-1 Linq 基礎查詢 (刪改

load title -1 style part ids deb control idt 用小型人員管理系統的項目實戰來練習linq的基礎增刪改查: using System; using System.Collections.Generic; using System

關於數據庫的建立刪改

是否為空 family gen 分組查詢 等於 set score 關於 upd 我們打開這個軟件首先要看看是否存在這個數據庫可以使用show databases:查看數據庫是否存在如果不存在我們可以新建數據庫用create database+數據庫的名字;(新建數據庫)u

012:子查詢刪改

err eat 多個 cal mat 行數 分類 查詢 同時 一. 子查詢 子查詢就是指在一個select語句中嵌套另一個select語句。同時,子查詢必須包含括號。 MySQL 5.6.x 版本之前,MySQL的子查詢性能較差,但是從5.6開始,不存在性能差的問題。

PL/SQL入門——基礎的刪改(轉載)

斜杠 一起 重復行 ima table ext 自己 課程 新的 鏈接:https://blog.csdn.net/u013253278/article/details/51120705 學生表Student 課程表Course 選課表SC 首先用system身份登錄

Mybatis入門案例之刪改

取值 private wid resources property 文件 3.0 AS 普通 MyBatis:是一個支持普通sql查詢和存儲過程以及高級映射的優秀持久層框架,其主要思想是將代碼中大量的SQL語句剝離出來,配置到配置文件中,以實現SQL的靈活配置. mybat

Asp.net Core 2.1使用 EF Core 簡單刪改操作數據庫

generic nuget ini gen 項目 pub sass .net 增刪改查 Asp.net Core 2.1使用 EF Core 簡單增刪改查操作數據庫 大概步驟如下5步: 1、創建項目(Asp.net Core 2.1項目) 2、項目使用EF Core 3、建

mysql-3 資料表的建立刪改

建立資料表 通用語法:CREATE TABLE table_name (column_name column_type); CREATE TABLE IF NOT EXISTS `csj_tbl`( `csj_id` INT UNSIGNED AUTO_INCREMENT, `csj_ti

MYSQL的常用命令刪改語句資料型別

連線命令:mysql -h[主機地址] -u[使用者名稱] -p[使用者密碼] 建立資料庫:create database [庫名] 顯示所有資料庫: show databases; 開啟資料庫:use [庫名] 當前選擇的庫狀態:SELECT DATABASE(); 建立資料表:CRE

Android中使用OrmLite(一):表建立刪改

OrmLite是一個輕量級的ORM框架,面向JAVA語言。也是時下流行的Android的ORM框架之一。在Android中使用Sqlite資料,如果又不想寫SQL,OrmLite或許是個不錯的選擇。 使用OrmLite,首先要在gradle

Mybatis學習記錄-----Mybatis入門(基本刪改方法)

方便回顧和加強記憶,記錄一下mybatis的使用方法。mybatis的官網文件:http://www.mybatis.org/mybatis-3/zh/getting-started.html。 Mybatis框架 目錄 1、建立資