Pandas_skip_rows参数

1
2
3
4
import pandas as pd 

file = r"D:\Stock\market_data\sz.301379.csv"
pd.read_csv(file,index_col='date')

out:

code open high low close preclose volume amount adjustflag turn tradestatus pctChg peTTM pbMRQ isST
date
2022-11-01 sz.301379 31.51 35.00 30.98 32.10 31.51 12174623 3.954513e+08 2 50.6603 1 1.8724 27.622495 6.457838 0
2022-11-02 sz.301379 33.50 34.38 32.55 32.63 32.10 9898625 3.297200e+08 2 41.1896 1 1.6511 28.078567 6.564463 0
2022-11-03 sz.301379 30.70 31.08 29.88 30.95 32.63 8228578 2.516198e+08 2 34.2403 1 -5.1486 26.632904 6.226483 0
2022-11-04 sz.301379 30.61 31.59 30.30 30.94 30.95 6517006 2.014447e+08 2 27.1182 1 -0.0323 26.624299 6.224471 0
2022-11-07 sz.301379 30.66 31.94 30.65 31.41 30.94 6801484 2.128195e+08 2 28.3019 1 1.5191 27.028741 6.319025 0
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2023-10-16 sz.301379 32.79 32.79 30.83 31.14 32.64 2875587 9.040269e+07 2 11.3480 1 -4.5956 25.916098 2.521440 0
2023-10-17 sz.301379 31.37 31.37 30.50 30.63 31.14 1355321 4.168925e+07 2 5.3485 1 -1.6378 25.491653 2.480145 0
2023-10-18 sz.301379 30.47 30.70 29.81 29.81 30.63 1317991 3.968151e+07 2 5.2012 1 -2.6771 24.809213 2.413749 0
2023-10-19 sz.301379 29.43 31.14 29.30 29.98 29.81 1548600 4.724414e+07 2 6.1113 1 0.5703 24.950694 2.427514 0
2023-10-20 sz.301379 30.26 30.35 29.08 29.10 29.98 1191500 3.522436e+07 2 4.7021 1 -2.9353 24.218319 2.356259 0

236 rows × 15 columns

如果想跳过其中的某些行,只要读取文件末的10行数据

  1. 首先要知道该文件总共有多少行;
  2. 然后使用skiprows参数跳过倒数第10行前的那些行数
查看文件的行数

open(csv_file) + readlines() 函数读取文件的行数

1
2
3
4
5
6
7
8
9
# 打开csv文件
f = open(file= file,mode='r',encoding='utf-8')

# 读取文件的所有行;每行的数据作为一个字符串元素装入到一个列表中
ls = f.readlines()

# 查看列表的长度,其中包含表头的那一行
ls[0]
len(ls)

out:

‘\ufeffdate,code,open,high,low,close,preclose,volume,amount,adjustflag,turn,tradestatus,pctChg,peTTM,pbMRQ,isST\n’

237
1
2
3
# 如果只要读取文件的最后10行
ls_row = [i for i in range(1,len(ls)-10)]
pd.read_csv(file,index_col='date',skiprows=ls_row)

out:

code open high low close preclose volume amount adjustflag turn tradestatus pctChg peTTM pbMRQ isST
date
2023-10-09 sz.301379 31.39 32.10 31.36 32.02 31.70 1512800 4.820541e+07 2 5.9700 1 1.0095 26.648473 2.592695 0
2023-10-10 sz.301379 32.26 32.44 31.85 32.10 32.02 1630565 5.242501e+07 2 6.4347 1 0.2498 26.715053 2.599173 0
2023-10-11 sz.301379 32.60 32.90 31.85 32.42 32.10 1837178 5.939962e+07 2 7.2501 1 0.9969 26.981371 2.625083 0
2023-10-12 sz.301379 32.43 32.64 31.65 31.83 32.42 1323548 4.227372e+07 2 5.2232 1 -1.8199 26.490347 2.577310 0
2023-10-13 sz.301379 31.76 33.58 31.45 32.64 31.83 3304300 1.081152e+08 2 13.0399 1 2.5448 27.164465 2.642897 0
2023-10-16 sz.301379 32.79 32.79 30.83 31.14 32.64 2875587 9.040269e+07 2 11.3480 1 -4.5956 25.916098 2.521440 0
2023-10-17 sz.301379 31.37 31.37 30.50 30.63 31.14 1355321 4.168925e+07 2 5.3485 1 -1.6378 25.491653 2.480145 0
2023-10-18 sz.301379 30.47 30.70 29.81 29.81 30.63 1317991 3.968151e+07 2 5.2012 1 -2.6771 24.809213 2.413749 0
2023-10-19 sz.301379 29.43 31.14 29.30 29.98 29.81 1548600 4.724414e+07 2 6.1113 1 0.5703 24.950694 2.427514 0
2023-10-20 sz.301379 30.26 30.35 29.08 29.10 29.98 1191500 3.522436e+07 2 4.7021 1 -2.9353 24.218319 2.356259 0