主题:记录pandas的常见建立dataframe方法

一、pd.DataFrame()方法(创建1列的情景)

(1)传入pd.DataFrame()的内容,是一个dict(字典)

(2)在原有数据集上添加某个列和值

-------->数据集名['列名']=传入自定义的list

-------->数据集名['列名A']=pd.DataFrame(data=数据集名['列名B']) ,其中data参数可省略

即<==>数据集名['列名A']=pd.DataFrame(数据集名['列名B'])

将后者的数值(value)赋给其他数据集或列

import pandas as pd
datas=pd.DataFrame({'出场顺序':['1','2','3','4'],'打分等级':['A','B','C','D']})
datas['是否出场']=['是' for i in range(4)]
datas['出演人数']=[1 for i in range(4)]
datas['本地人']=pd.DataFrame(data=['是','否','是','否'])
datas['非外国人']=pd.DataFrame(data=datas['本地人'])
#datas['非外国人']=pd.DataFrame(datas['本地人'])
datas

结果如图:

(3)pd.DataFrame()独立创建1列

----->  I.用dataframe的定义

list=['aa','AA','Aa','aA']
data=pd.DataFrame({'生物基因组合':list})

------->II 传参数方法

list=['aa','AA','Aa','aA']
data=pd.DataFrame(list,columns=['生物基因组合'])

这里需留意,如果columns参数没有添加中括号,即代码:data=pd.DataFrame(list,columns=['生物基因组合']),将报错

Index(...) must be called with a collection of some kind, 'xxx'(列名) was passed

(4)将创建的新数据列直接放在某个数据列后面(前提:行数一致),采用pd.concat()方法

data_result=pd.concat([datas,data],axis=1)
#data_result

结果:

二、pd.DataFrame()方法(创建多列的情景)

(1)传入pd.DataFrame()的内容,是一个dict(字典),在字典里体现多列

(2)默认添加数据是按行添加

list_x=[1,3,4]
list_y=[1,9,16]
data_demo=pd.DataFrame(data=[list_x,list_y],columns=['第一列','第二列','第三列'])
data_demo

结果:

(3)通过pd.DataFrame()创建多列,按列添加数据

list_x=[1,3,4]
list_y=[1,9,16]
data_test=pd.DataFrame([list_x,list_y]).T
data_test.rename(columns={0:'第一列',1:'第二列'},inplace=True)

结果:

三、将嵌套的list拆分成不同列,存为dataframe

import pandas as pd
arr=[[2,8],[3,27],[4,64]] #list
#arr[0][0]=2,arr[1][0]=3,arr[2][0]=4
#arr[0][1]=8,arr[1][1]=27,arr[2][1]=64
list_X=[]
list_Y=[]
for i in range(len(arr)):list_X.append(arr[i][0])list_Y.append(arr[i][1])
# list_X [2,3,4]
# list_Y [8,27,64]
result=pd.DataFrame({'横坐标': list_X,'纵坐标': list_Y})
result

结果包括两列:

      横坐标列为:2,3,4  ;纵坐标列为:8,27,64

四、参考网址

Python报错TypeError: Index(...) must be called with a collection of some kind, ' ' was passed columns_给我一点温度-CSDN博客https://blog.csdn.net/sinat_26811377/article/details/98741330

python数据拼接: pd.concat - boobo - 博客园1.concat concat函数是在pandas底下的方法,可以将数据根据不同的轴作简单的融合 参数说明 objs: series,dataframe或者是panel构成的序列lsit&#https://www.cnblogs.com/RB26DETT/p/11555099.html

pandas DataFrame方法;dataframe 定义一个数值全为1的列;dataframe创建多列;如何拆分嵌套list存为dataframe;在数据集添加一个新的列相关推荐

  1. 定义一个学生信息结构体,包含姓名,学号,语文成绩、数学成绩,和英语成绩,定义结构体数组存放不同学生的信息,可以在终端录入学生的信息,在基础上添加一个计算平均值和按照平均值排序以及删除指定学号的学生信息

    1. 代码如下: 头文件  chx.h #include<stdio.h> #include<string.h>struct chx{char name[128];int sn ...

  2. 批量给 PDF 文件的末尾添加一个新页面

    概要:我们有时候需要批量给 PDF 文件的末尾添加一个新的页面,比如说我们需要给最后一页添加一个联系页面等.对于 PDF 这种文件格式来说,我们还需要安装额外的编辑软件,但是这里不需要安装专业的 PD ...

  3. java添加按钮点击事件_如何为odoo 10中的按钮点击事件添加一个java脚本处理程序?...

    我想使用java脚本为header中的按钮创建一个处理程序.下面我视图模型给出:如何为odoo 10中的按钮点击事件添加一个java脚本处理程序? inherit_id="web.asset ...

  4. python3-pandas DataFrame 索引、bool索引、pandas 字符串方法

    1.DataFrame 索引 1.1 普通索引取值 pandas 取行或者列的注意点: 方括号写数组,表示取行,对行进行操作 方括号写字符串,表示取列,对列进行操作 import pandas as ...

  5. python df删除特定行_pandas.DataFrame删除/选取含有特定数值的行或列实例

    1.删除/选取某列含有特殊数值的行 import pandas as pd import numpy as np a=np.array([[1,2,3],[4,5,6],[7,8,9]]) df1=p ...

  6. python dataframe删除指定行_pandas.DataFrame删除/选取含有特定数值的行或列

    pandas.DataFrame删除/选取含有特定数值的行或列 发布时间:2018-06-20 09:13, 浏览次数:9726 , 标签: pandas DataFrame 1.删除/选取某列含有特 ...

  7. 5种创建Dataframe方法

    下面将简要介绍Dataframe的5种创建方法,由于输出结果比较冗余,这里将不会展示输出结果,读者可以自行赋值粘贴,最好使用jupyter运行,并查看结果.另外的,代码中有非常详细的注释. Dataf ...

  8. Pandas操作dataframe对所有列/行求和 ,对指定列/行求和,对某一列/行求和,并添加新的列/行

    计算各行数据总和并作为新列添加到末尾 计算各列数据总和并作为新行添加到末尾 import pandas as pd t=[[1,2,3],[4,5,6],[7,8,9]] df=pd.DataFram ...

  9. pandas使用replace函数和正则表达式移除dataframe字符串数据列中头部指定模式字符串(Removing leading substring in dataframe)

    pandas使用replace函数和正则表达式移除dataframe字符串数据列中头部指定模式字符串(Removing leading substring in dataframe) 目录

  10. pandas使用Categorical函数将object数据数据列转化为categorical数据列并基于categorical的因子(分类)水平排序dataframe

    pandas使用Categorical函数将object数据数据列转化为categorical数据列并基于categorical的因子(分类)水平排序dataframe 目录

最新文章

  1. 为什么BCH有了0确认还要缩短时间
  2. 抓包oracle密码,Oracle TNS 协议抓包分析
  3. 使用多个struts-config配置文件,模块化
  4. mysql centos 安装目录在哪_centos中如何查看mysql安装目录在哪
  5. 分区起始位置参数溢出_Kafka分区副本分配解析
  6. react全局状态管理_Reto:在React中使用hooks管理全局状态
  7. python简明教程_01
  8. 通过ServerGuide 装 服务器 raid1
  9. pancakeswap 开盘抢跑机器人 (附代码)
  10. 如果你用过这些电子产品 证明你老了
  11. ajax 与form 表单连用 success不执行bug解决
  12. Java面向对象之创建和使用对象——定义学生/教师类并输出相关信息
  13. 如何挑选无线路由器?
  14. 荣联 云通讯 发送短信通知 node
  15. 对淘宝双飞翼布局的的一点理解
  16. Python学习——02-Python基础——【4-文件处理与三元运算】
  17. 不同vlan间的通信--三层交换技术
  18. JavaScript——易班优课YOOC课群在线测试自动答题解决方案(十四)自动刷题
  19. ConvLSTM:一种用于降水预报的机器学习方法
  20. 使用VisualSFM和Meshlab实现三维重建过程

热门文章

  1. python百度地图api添加坐标点_python调用百度地图API实现经纬度换算、热力地图全流程指南...
  2. 音符符号html代码,五线谱符号|五线谱符号图案大全_好特教程
  3. 开发微信小程序-家教信息平台的策划
  4. 微信小程序开发--uniapp
  5. 怎么把计算机加入网络打印机共享打印机共享,打印机共享怎么设置
  6. 正弦信号与噪声信号仿真生成实测信号,自相关分析
  7. android xutils3 注解,xUtils3使用简介
  8. office插件开发_OneKeyTools:强大PPT插件
  9. 群晖218J搭建VLMCSD
  10. WSO2 ——(10)ESB功能:服务编排