当前位置: 首页 > article >正文

Python Pandas处理csv文件常用操作代码

常识

  1. 使用pandas.read_csv从csv文件中读取数据,对于csv中缺失的空值,读进dataframe会自动补为numpy.nan,且数据类型为float

操作

  1. 读取csv文件,存储为dataframe数据类型
df = pandas.read_csv(csv_path)
  1. 查看csv文件的dataframe的所有列字段名
print(df.columns)
  1. 按行遍历dataframe
for row in df.itertuples():

可以用row.column_name访问该行具体的列(column_name无需加引号)

  1. 删除dataframe的指定整列数据
df = df.drop(['city', 'region', 'iso_country_code'], axis=1)
# 删除列 'city', 'region', 'iso_country_code'
# 这里的删除其实并没有对df本身作出任何改变,而是将df进行拷贝,将拷贝的副本进行了列删除操作,所以这里一定要赋值给一个新的df,仅仅用df.drop并不能改变df
  1. 根据某个字段的值的集合条件筛选出符合条件的目标行,以构成新dataframe
# 使用isin()方法筛选匹配的行
new_df = df[df['placekey'].isin(mht_poi_list)]
# 筛选出df中 placekey字段的值在列表mht_poi_list中的记录行,以构成一个新dataframe new_df
new_df = new_df.reset_index(drop=True)
# 经过筛选而得到的dataframe索引很乱,不连续,这里的操作是在重排索引
  1. dataframe指定位置插入一整列
df.insert(loc=6, column='top_category_id', value=cate1_ids)
# loc 位置
# column 列名
# value 数据来源 (这里一般我习惯用list,要求list的长度要与dataframe的行数目一致)
  1. 将dataframe数据写入csv文件
df.to_csv(csv_path, index=False)  # 不把行索引信息写入csv文件
df.to_csv(csv_path, index=True)  # 把行索引信息写入csv文件
  1. 使用list构建dataframe
df = pandas.DataFrame(data, columns=['head', 'relation', 'tail'])
# data是一个list,data这个list里面的元素也是一个个list,每一个list表示一行数据
# columns 表示列名 
# data里面的list中的元素放置位置要与columns一致

http://www.kler.cn/a/159799.html

相关文章:

  • Excel筛选的操作教程
  • StructuredStreaming (一)
  • C 语言 【模拟实现内存库函数】
  • MySQL系列之如何在Linux只安装客户端
  • 提取神经网络数学表达式
  • C#发票识别、发票查验接口集成、电子发票(航空运输电子行程单)
  • MAC笔记本里Spyder python 的安装问题 和 虚拟环境VENV的创建
  • 大话数据结构-查找-多路查找树
  • SimplePIR——目前最快单服务器匿踪查询方案
  • 基于OpenCV+CNN+IOT+微信小程序智能果实采摘指导系统——深度学习算法应用(含pytho、JS工程源码)+数据集+模型(二)
  • 输入日期求n天后
  • 二叉树的前、中和后序遍历的递归与迭代实现
  • Springboot 项目关于版本升级到 3.x ,JDK升级到17的相关问题
  • Boost:asio捕获信号
  • 【BroadcastReceiver】
  • 排序:直接插入排序希尔排序
  • 【Docker】从零开始:13.Docker安装tomcat
  • 猫头虎分享已解决Bug || 报错npm ERR! A complete log of this run can be found in: npm ERR!
  • 8个Python高效数据分析的技巧!
  • 【链表Linked List】力扣-24 两两交换链表中的节点
  • Python小案例:while练习题
  • css 3D背景反转实现
  • 品牌要随时监测电商价格现实吗
  • uniapp打包iOS应用并通过审核:代码混淆的终极解决方案 ✨
  • pytorch学习6-非线性变换(ReLU和sigmoid)
  • 电力仪表在工厂车间设备电能管理系统的设计-安科瑞黄安南