pandas数据操作

简介: pandas数据操作字符串方法Series对象在其str属性中配备了一组字符串处理方法,可以很容易的应用到数组中的每个元素import numpy as npimport pandas as pdt = pd.

pandas数据操作

字符串方法

Series对象在其str属性中配备了一组字符串处理方法,可以很容易的应用到数组中的每个元素

import numpy as np
import pandas as pd

t = pd.Series(['a_b_c_d','c_d_e',np.nan,'f_g_h'])
t
0    a_b_c_d
1      c_d_e
2        NaN
3      f_g_h
dtype: object
t.str.cat(['A','B','C','D'],sep=',') # 拼接字符串
0    a_b_c_d,A
1      c_d_e,B
2          NaN
3      f_g_h,D
dtype: object
t.str.split('_') # 切分字符串
0    [a, b, c, d]
1       [c, d, e]
2             NaN
3       [f, g, h]
dtype: object
t.str.get(0) # 获取指定位置的字符串
0      a
1      c
2    NaN
3      f
dtype: object
t.str.replace("_", ".") # 替换字符串
0    a.b.c.d
1      c.d.e
2        NaN
3      f.g.h
dtype: object
t.str.pad(10, fillchar="?") # 左补齐
0    ???a_b_c_d
1    ?????c_d_e
2           NaN
3    ?????f_g_h
dtype: object
t.str.pad(10, side="right", fillchar="?") # 右补齐
0    a_b_c_d???
1    c_d_e?????
2           NaN
3    f_g_h?????
dtype: object
t.str.center(10, fillchar="?") #中间补齐
0    ?a_b_c_d??
1    ??c_d_e???
2           NaN
3    ??f_g_h???
dtype: object
t.str.find('d') # 查找给定字符串的位置,左边开始
0    6.0
1    2.0
2    NaN
3   -1.0
dtype: float64
t.str.rfind('d') # 查找给定字符串的位置,右边开始
0    6.0
1    2.0
2    NaN
3   -1.0
dtype: float64

数据转置(行列转换)

dates = pd.date_range('20130101',periods=10)
dates
DatetimeIndex(['2013-01-01', '2013-01-02', '2013-01-03', '2013-01-04',
               '2013-01-05', '2013-01-06', '2013-01-07', '2013-01-08',
               '2013-01-09', '2013-01-10'],
              dtype='datetime64[ns]', freq='D')
df = pd.DataFrame(np.random.randn(10,4),index=dates,columns=['A','B','C','D'])
df.head()
A B C D
2013-01-01 -0.665173 0.516813 0.745156 -0.303295
2013-01-02 -0.953574 2.125147 0.238382 -0.400209
2013-01-03 -0.233966 2.066662 0.331000 -2.802471
2013-01-04 2.038273 0.982127 -1.096000 -1.051818
2013-01-05 -1.438657 -1.208042 -0.375673 0.384522
df.head().T # 行列转换
2013-01-01 00:00:00 2013-01-02 00:00:00 2013-01-03 00:00:00 2013-01-04 00:00:00 2013-01-05 00:00:00
A -0.665173 -0.953574 -0.233966 2.038273 -1.438657
B 0.516813 2.125147 2.066662 0.982127 -1.208042
C 0.745156 0.238382 0.331000 -1.096000 -0.375673
D -0.303295 -0.400209 -2.802471 -1.051818 0.384522

对数据应用function

df.head().apply(np.cumsum) # cumsum 累加
A B C D
2013-01-01 -0.665173 0.516813 0.745156 -0.303295
2013-01-02 -1.618747 2.641960 0.983537 -0.703504
2013-01-03 -1.852713 4.708622 1.314537 -3.505975
2013-01-04 0.185560 5.690749 0.218537 -4.557793
2013-01-05 -1.253098 4.482707 -0.157135 -4.173271

频率

计算值出现的次数,类似直方图

s = pd.Series(np.random.randint(0, 7, size=10))
s
0    3
1    3
2    1
3    6
4    3
5    3
6    5
7    2
8    1
9    0
dtype: int32
s.value_counts()
3    4
1    2
6    1
5    1
2    1
0    1
dtype: int64
目录
相关文章
|
1月前
|
Python
使用 Pandas 库时,如何处理数据的重复值?
在使用Pandas处理数据重复值时,需要根据具体的数据特点和分析需求,选择合适的方法来确保数据的准确性和唯一性。
119 8
|
2天前
|
存储 数据挖掘 数据处理
Pandas 数据筛选:条件过滤
Pandas 是 Python 最常用的数据分析库之一,提供了强大的数据结构和工具。本文从基础到高级,介绍如何使用 Pandas 进行条件过滤,包括单一条件、多个条件过滤、常见问题及解决方案,以及动态和复杂条件过滤的高级用法。希望本文能帮助你更好地利用 Pandas 处理数据。
104 78
|
4天前
|
数据挖掘 索引 Python
Pandas数据读取:CSV文件
Pandas 是 Python 中强大的数据分析库,`read_csv` 函数用于从 CSV 文件中读取数据。本文介绍 `read_csv` 的基本用法、常见问题及其解决方案,并通过代码案例详细说明。涵盖导入库、读取文件、指定列名和分隔符、处理文件路径错误、编码问题、大文件读取、数据类型问题、日期时间解析、空值处理、跳过行、指定索引列等。高级用法包括自定义列名映射、处理多行标题和注释行。希望本文能帮助你更高效地使用 Pandas 进行数据读取和处理。
37 13
|
1天前
|
算法 数据挖掘 索引
Pandas数据排序:单列与多列排序详解
本文介绍了Pandas库中单列和多列排序的方法及常见问题的解决方案。单列排序使用`sort_values()`方法,支持升序和降序排列,并解决了忽略大小写、处理缺失值和索引混乱等问题。多列排序同样使用`sort_values()`,可指定不同列的不同排序方向,解决列名错误和性能优化等问题。掌握这些技巧能提高数据分析效率。
20 9
|
1月前
|
Python
|
1月前
|
Python
|
1月前
|
Python
Pandas 常用函数-数据合并
Pandas 常用函数-数据合并
40 1
|
1月前
|
索引 Python
Pandas 常用函数-数据排序
10月更文挑战第28天
17 1
|
1月前
|
Python
Pandas 常用函数-查看数据
Pandas 常用函数-查看数据
21 2
|
1月前
|
SQL JSON 数据库
Pandas 常用函数-读取数据
Pandas 常用函数-读取数据
19 2
下一篇
DataWorks