如何在python的csv中导入3D表?

问题描述 投票:0回答:1

我必须导入3维数据表才能在我的python脚本中对其进行操作。

我拥有的3个维度是:

  1. 覆盖率
  2. 年龄
  3. 高级

险种行和年龄列不是固定的,这意味着我可能比下面的示例更多或更少。

我当前的测试数据看起来像(FWD_FIXED_5YRS.csv);

COVERAGE    Age 18  Age 20  Age 25  Age 30  Age 35  Age 40  Age 45  Age 50  Age 55  Age 60
50000.00    53.00   53.00   53.00   53.00   55.50   67.50   82.50   129.00  175.50  288.50
100000.00   54.00   54.00   54.00   60.00   74.00   117.00  146.00  198.00  331.00  536.00
150000.00   78.50   78.50   81.00   90.00   111.00  169.50  219.00  307.50  496.50  804.00
200000.00   108.00  108.00  108.00  120.00  148.00  222.00  292.00  410.00  662.00  1027.00
250000.00   87.50   87.50   90.00   102.50  124.00  165.00  235.00  350.00  557.50  1215.00
300000.00   105.00  105.00  108.00  123.00  147.00  198.00  282.00  420.00  669.00  1458.00
....
....

我尝试了另一个qn的操作,但似乎只获得了前几列:

import csv

with open('FWD_FIXED_5YRS.csv', 'r') as f:
    obj = csv.reader(f)
    X, Y, Z = [], [], []
    for i,row in enumerate(obj):
        if i>0:
             xstring = row[0]
             ystring = row[1]
             zstring= row[2]
             print (xstring, ystring, zstring)
python matrix-multiplication import-csv
1个回答
0
投票

这可以使用pandas模块轻松完成。如果可以使用pandas模块,则可以按以下方式读取csv。

import pandas as pd
df = pd.read_csv('FWD_FIXED_5YRS.csv', sep='\t', index_col='COVERAGE')
df

它将给出以下结果,

            Age 18  Age 20  Age 25  Age 30  Age 35  Age 40  Age 45  Age 50  Age 55  Age 60
COVERAGE                                        
50000.0     53.0    53.0    53.0    53.0    55.5    67.5    82.5    129.0   175.5   288.5
100000.0    54.0    54.0    54.0    60.0    74.0    117.0   146.0   198.0   331.0   536.0
150000.0    78.5    78.5    81.0    90.0    111.0   169.5   219.0   307.5   496.5   804.0
200000.0    108.0   108.0   108.0   120.0   148.0   222.0   292.0   410.0   662.0   1027.0
250000.0    87.5    87.5    90.0    102.5   124.0   165.0   235.0   350.0   557.5   1215.0
300000.0    105.0   105.0   108.0   123.0   147.0   198.0   282.0   420.0   669.0   1458.0

© www.soinside.com 2019 - 2024. All rights reserved.