Pandas(DataFrame操作)
- 强推Theodore Petrou的《Pandas Cookbook》(2017 Packt Publishing)以及pandas的官方手册(pandas的官方文档写的太棒了)
-
df = pd.DataFrame(data, index=[], columns=[])
:data
是二维数组 - 构建多重index的
df
,如下:
>>> tuples = [('a', 'v1'), ('a', 'v2'), ('b', 'v1'), ('b', 'v2')]
>>> index = pd.MultiIndex.from_tuples(tuples)
>>> columns = ['c1', 'c2']
>>> values = np.arange(8).reshape(4, 2)
>>> df = pd.DataFrame(values, columns=columns, index=index)
>>> df
c1c2
av101
v223
bv145
v267
选择多列
-
df[col_names_list]
: 直接通过列名称列表来选择多列 -
df.select_dtypes(include=['int'])
: 选择数据类型是int
的列 -
df.filter(like='str', regex='re')
: 此方法只会检查所有的column names,而不会检查确切的数据 -
df[new_col_order_list]
: 当要对df中的列组织顺序时,可以直接用想要的列名序来index -
(df + .00501)// .01
: 可以将df中的数据全都四舍五入成1位小数 -
df.add(.00501).floordiv(.01)
: 和上面效果一样 - 注意:如下
In[1]: .045 + .005
Out [1]: 0.049999999999999996
所以化成一位小数的时候多加了0.00001
-
df_1 == df_2
:返回一个同shape的df,值全部为bool类型,检测对应的数据是否相等 -
df.sort_values()
:
df.loc[]
和df.iloc[]
用法集
1. df.loc[]
详解
【Pandas(DataFrame操作)】注:以下i1
i2
代表index_label,c1
c2
代表column_name-
df.loc['i1']
: 返回一个Series
,包含i1
行的数据 -
df.loc[['i1', 'i2']]
: 返回一个df
,包含i1
i2
两行数据 -
df.loc['i1', 'c1']
: 返回对应位置的数据 -
df.loc['i1':'12', 'c1':'c2']
: 返回一个df
,包含对应行和列的数据 -
df.loc[df['c1'] > 1]
: 返回一个df
,包含c1
列中数值大于1的所有行 -
df.loc[df['c1'] > 1, ['c2']]
: 返回一个df
,包含上面返回df
中的c2
列 -
df.loc[lambda df: df['c1'] == 1]
: 返回一个df
,包含c1
列中数值等于1的所有行 -
df.loc[['i1', 'i2'], ['c1']] = 1
: 将df
中对应位置的数据改为1 -
df.loc['i1'] = 1
: 将对应行的数据全部改为1 -
df.loc[:, 'c1'] = 1
:将对应列的数据全部改为1 -
df.loc[df['c1'] > 1] = 0
: 将对应列数据大于1的所有行的所有数据改为0 -
df.loc[1:9]
: 返回1-9行的数据 - 对于多重Index的
df
的操作到时用help(pd.DataFrame.loc)
翻到最后看就是了
df.iloc[]
详解
- iloc (integer-location)
- 和
df.loc[]
一样的功能,只是完全基于数字进行索引,例如df.iloc[1:3, 1:3]
就相当于df.loc['i1':'i1', 'c1':'c3']
,其他类似 -
df.loc[]
也能完全基于数字进行索引
-
df.at['i1', 'c1']
: 返回对应位置的值 - 'df.at['i1', 'c1'] = 1`: 将对应位置的值设为1
-
df2 = df['c1'] > 1
:
推荐阅读
- 2.6|2.6 Photoshop操作步骤的撤消和重做 [Ps教程]
- MongoDB,Wondows下免安装版|MongoDB,Wondows下免安装版 (简化版操作)
- 在线版的迅捷思维导图怎么操作()
- 操作系统|[译]从内部了解现代浏览器(1)
- 数据库总结语句
- JS常见数组操作补充
- 7、前端--jQuery简介、基本选择器、基本筛选器、属性选择器、表单选择器、筛选器方法、节点操作、绑定事件
- 炒股知识(超级短线操作的秘籍|炒股知识:超级短线操作的秘籍 玩转股市)
- 1.2序列通用操作
- MySQL数据库的基本操作