博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pandas dataframe 数据框
阅读量:4987 次
发布时间:2019-06-12

本文共 1434 字,大约阅读时间需要 4 分钟。

数据框是一个二维数据结构,类似于SQL中的表格。借助字典,数组,列表和序列等可以构造数据框。

1.字典创建数据框,则列的名称为key的名称:

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

2.列表创建数据框:

d = pd.DataFrame([[1,2,3,4],[5,6,7,8],[10,20,30,40],[50,60,70,80]],columns=['V1','V2','V3','V4'])print(d)

3.列的选取,删除和增加:

df = pd.DataFrame([[1,2,3,4],[5,6,7,8],[10,20,30,40],[50,60,70,80]],columns=['V1','V2','V3','V4'])print(df,'\n')df['V5'] = df['V1']*df['V2'] #第一列与第二列相乘;print('第一列与第二列相乘:')print(df['V5'],'\n')df['Flag'] = df['V2'] > 20 #增加一列;逻辑结果的值赋给flagprint('增加一列:')print(df,'\n')del df['Flag'] #删除列V5 = df.pop('V5') #删除列print('删除列:')print(df,'\n',V5,'\n')df.insert(2,'V6',df['V1']) # 2为插入的位置,V6为列的名称,df['V1']为插入的数值print('插入列:')print(df,'\n')print('*'*50)

4.一般的选取方式:

 

操作方式 方法 结果
选择某一列 def[col] 序列
通过列标签选择某一行 df.loc[col] 序列
通过具体的位置选择某一行 df.icol[2] 序列
切行 df[5:10] 数据框
读取其中一行数据

df.loc[0,:]

df.iloc[0,:]
df.ix[0,:]

 
复制数据框

df1=df.copy()

数据框
设置列名

df1.columns=['weight1','height1','is_fat_1'

 
数据框的连接

df_concat=df.join(df1)#左连接

或者

df_concat=pd.merge(df,df1,how='left',on='name')#合并

 
数据直接保存为excel或者csv等格式

df_concat.to_excel('df_conxcat.xls')

df_concat.to_csv('df_conxcat.csv')

 
 删除行、列

print(df.drop(0,axis = 0))#删除行;axis = 0可以省略

print(df.drop('V1',axis = 1))#删除列
print(df.pop('V4'))#删除列
#df.drop不改变原有的df中的数据,而是返回另一个dataframe来存放删除后的数据;

df.pop从原来的df中删除,返回删除的列

del df['V4']:永久删除

 

 

 

转载于:https://www.cnblogs.com/AkingHuang/p/9869265.html

你可能感兴趣的文章
将本地项目和远程git仓库相连接
查看>>
cocos3.12预编译android报错RuntimeJsImpl.cpp
查看>>
未解决的题-幂函数的奇偶性
查看>>
wc移植sae笔记
查看>>
<welcome-file-list>标签作用,怎样使用
查看>>
栈和队列
查看>>
db2 数据库配置HADR+TSA添加集群节点
查看>>
event Flow
查看>>
[Linux]Ubuntu设置时区和更新时间
查看>>
Caesars Cipher(算法)
查看>>
Codeforces Round #311 (Div. 2) E. Ann and Half-Palindrome 字典树/半回文串
查看>>
Codeforces Round #115 B. Plane of Tanks: Pro 水题
查看>>
BZOJ 2648: SJY摆棋子 kdtree
查看>>
Entity Framework
查看>>
第一阶段结对作业验收小学生四则运算
查看>>
理解python可变类型vs不可变类型,深拷贝vs浅拷贝
查看>>
添加数据库的Maven依赖(SqlServer,Oracle)
查看>>
Python Revisited (变量)
查看>>
从本质看海明码——海明码的由来
查看>>
线段树+等差/等比
查看>>