为了账号安全,请及时绑定邮箱和手机立即绑定

如何删除 csv 文件中第 [2] 列每一行中分隔符 (.) 后的符号?

如何删除 csv 文件中第 [2] 列每一行中分隔符 (.) 后的符号?

叮当猫咪 2023-05-09 14:58:19
如何删除 csv 文件中第 [2] 列每一行中分隔符 (.) 后的符号?文件结构:Date, Time, Open, High, Low, Last, Volume, NumberOfTrades, BidVolume, AskVolume2019/12/30, 14:38:01, 3233.00, 3233.00, 3230.00, 3233.00, 1, 1, 0, 12019/12/30, 14:38:01.1, 3233.25, 3233.00, 3230.00, 3233.25, 2, 1, 0, 22019/12/30, 14:43:13, 3230.00, 3230.25, 3230.00, 3230.00, 1, 1, 1, 02019/12/30, 15:12:47, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 02019/12/30, 15:12:47.1, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 02019/12/30, 15:12:47.2, 3224.50, 3225.50, 3224.50, 3224.50, 2, 1, 2, 02019/12/30, 15:12:58, 3224.50, 3225.50, 3224.50, 3224.50, 2, 1, 2, 02019/12/30, 15:13:14, 3224.50, 3224.75, 3224.50, 3224.50, 2, 1, 2, 02019/12/30, 15:13:14.1, 3224.50, 3225.25, 3224.50, 3224.50, 2, 1, 2, 0任务是删除第二列“时间”中的毫秒数(.1、.2、.33、.444 等)14:38:01.1 edit to 14:38:0114:43:13 do not edit15:12:47.1 edit to 15:12:4715:12:47.2 edit to 15:12:47 00:00:00.123 edit to 00:00:00文件非常大,因此应该通过创建其他 .csv 文件来进行修改,而不是更新原始文件。import csvf = open('Book1.csv')csv_f = csv.reader(f)for row in csv_f:我被困在这里了。我试过了,但这不是解决方案。row[2] = row[2][:-4] 预先感谢您的任何帮助
查看完整描述

3 回答

?
慕沐林林

TA贡献2016条经验 获得超9个赞

这可以用split()

编辑:将 row[2] 更改为 row[1],问题是错误的,我按照问题流程进行了

row[1] = row[1].split(".")[0]


查看完整回答
反对 回复 2023-05-09
?
猛跑小猪

TA贡献1858条经验 获得超8个赞

如果你愿意使用pandas你可以使用converters参数pd.read_csv

>>> df = pd.read_csv('book1.csv', converters={' Time': lambda x:x[:9]})


         Date       Time     Open  ...   NumberOfTrades   BidVolume   AskVolume

0  2019/12/30   14:38:01  3233.00  ...                1           0           1

1  2019/12/30   14:38:01  3233.25  ...                1           0           2

2  2019/12/30   14:43:13  3230.00  ...                1           1           0

3  2019/12/30   15:12:47  3224.50  ...                1           2           0

4  2019/12/30   15:12:47  3224.50  ...                1           2           0

5  2019/12/30   15:12:47  3224.50  ...                1           2           0

6  2019/12/30   15:12:58  3224.50  ...                1           2           0

7  2019/12/30   15:13:14  3224.50  ...                1           2           0

8  2019/12/30   15:13:14  3224.50  ...                1           2           0


[9 rows x 10 columns]


查看完整回答
反对 回复 2023-05-09
?
Cats萌萌

TA贡献1805条经验 获得超9个赞

使用 pandas dataframe 读取文件,然后在下面使用:


import pandas as pd


df = pd.read_csv('Book1.csv')

df['Time'] = df['Time'].str.split('.').str[0]


查看完整回答
反对 回复 2023-05-09
  • 3 回答
  • 0 关注
  • 112 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信