Python 从转换的RINEX文件格式化csv文件和/或数据帧列

Python 从转换的RINEX文件格式化csv文件和/或数据帧列,python,csv,gps,dataframe,Python,Csv,Gps,Dataframe,从转换的RINEX文件格式化csv文件和/或数据帧列 我正在尝试在写入csv文件之前格式化数据帧。我遇到的第一个问题是从RINEX文件的日期/时间中剥离输出,以便只给出时间: L1 L2 P1 P2 C1 S1 S2 2014-04-27 00:00:00 2014-04-27 00:00:30 此外,应对齐上述列标题(这些标题基本上代表卫星上的信号)。我的csv文件中的以下输出也要格式化,以使列例如右对齐,因此笔

从转换的RINEX文件格式化csv文件和/或数据帧列

我正在尝试在写入csv文件之前格式化数据帧。我遇到的第一个问题是从RINEX文件的日期/时间中剥离输出,以便只给出时间:

    L1  L2  P1  P2  C1  S1  S2
2014-04-27 00:00:00                         
2014-04-27 00:00:30     
此外,应对齐上述列标题(这些标题基本上代表卫星上的信号)。我的csv文件中的以下输出也要格式化,以使列例如右对齐,因此笔直

2014-04-27 05:01:30 -993864.147 -769167.945 23638879.454    23638880.731    23638879.193    47.0    42.0
2014-04-27 05:02:00 -1093051.608    -846456.845 23620004.727    23620005.748    23620003.334    47.0    42.0
2014-04-27 05:02:30 -1192060.664    -923606.729 23601163.403    23601164.435    23601163.315    47.0    42.0
2014-04-27 05:03:00 -1290882.849    -1000611.009    23582358.959    23582360.179    23582359.429    47.0    42.0
2014-04-27 05:03:30 -1389517.149    -1077468.879    23563589.575    23563590.085    23563590.032    47.0    42.0
2014-04-27 05:04:00 -1487961.416    -1154178.674    23544856.908    23544857.096    23544856.147    46.0    42.0
到目前为止,我使用的代码是:

def读取_数据(自身、RINEXfile): obs_数据_块=[]

    while True:
        obss, _, _, epochs, _ = self.read_data_chunk(RINEXfile)

        if obss.shape[0] == 0:
            break

        obs_data_chunks.append(pd.Panel(
            np.rollaxis(obss, 1, 0),
            items=['G%02d' % d for d in range(1, 33)],
            major_axis=epochs,
            minor_axis=self.obs_types
        ).dropna(axis=0, how='all').dropna(axis=2, how='all'))

        obs_data_chunks_dataframe = obs_data_chunks[0]

        for sv in range(32):
            sat = obs_data_chunks_dataframe[sv, :]
            #print "sv_data: {0}".format(sat)
            #sat[0] = sat[0].apply(pd.datetools.normalize_date)
            sat.to_csv(('sv_data_{0}').format(sv), sep='\t')
            #pd.set_option('display.max_rows', 2900)

注释掉的代码描述了我到目前为止使用的策略,但失败了。在哪里可以改进代码以执行这些任务?我是在数据帧(即“sat”)上还是在生成的文件(即“sv_数据{0}”)上执行格式化?

要输出带分隔符的文件还是固定宽度的文件?您谈到的csv是分隔的,但您也谈到了字段的对齐方式,就像您使用固定宽度时一样。是哪一个?@StevenRumbalski是的,实际上我想要固定宽度的列,因此对齐,但用空格分隔。谢谢