python - 如何批量删除 CSV 文件中的列中不需要的信息?
问题描述
所以我最近将多个 csv 文件合并为一个。由于文件名是日期,因此我还包括“文件名”作为参考列。但是,文件名包含我不想包含的信息,例如时间和文件扩展名。作为初学者,我只熟悉导入和打印要查看的文件。建议使用什么代码在日期之后批量删除信息?
answer filename
7 2018-04-12 21_01_01.csv
7 2018-04-18 18_36_30.csv
7 2018-04-18 21_01_32.csv
8 2018-04-20 15_21_02.csv
7 2018-04-20 21_00_44.csv
7 2018-04-22 21_01_05.csv
解决方案
在 python 中处理表格数据时,我强烈建议使用 pandas 包。
import pandas as pd
df = pd.read_csv("../test_data.csv")
def rem_part(string):
return string.split(' ')[0] # could also split on '.' if you want to keep the time
df['date'] = df['filename'].apply(rem_part)
df.drop('filename', axis = 1, inplace=True) # remove the filename column if you so please
df.to_csv("output.csv"). # save the file as a new CSV or overwrite the old
该test_data.csv
文件包含以下内容:
answer,filename
7,2018-04-12 21_01_01.csv
7,2018-04-18 18_36_30.csv
7,2018-04-18 21_01_32.csv
8,2018-04-20 15_21_02.csv
7,2018-04-20 21_00_44.csv
7,2018-04-22 21_01_05.csv
推荐阅读
- php - Laravel 5.7 Route [role.user] 未定义
- python - 将谷歌街景的深度图(base64)转换为图像
- java - 添加 JSTL 依赖会导致 maven 问题并且不通过控制器显示页面?
- php - 使用键将字符串转换为数组
- visual-studio - 在 Visual Studio 代码中运行 asp.net core mvc 应用程序
- tensorflow - 如何为训练和验证创建两个图?
- docker - 如何在 docker 中更新 Graylog 版本
- codeception - 将 codeception 测试名称传递给 browserstack
- ios - 如何在垂直轴左侧显示标签(使用图表)?
- c++ - 访问继承的函数