我想读取文本文件表作为DataFrame。
我有一些文本文件,其中包含表的表示形式,但是有一些换行符,例如
clock_name total_pwr leakage_pwr
NA* 3.0675e-05 3.0675e-05
CLK1 (1.3333e+02) 6.8333e-02 6.0083e-03
LONGCLKNAME (3.3333e+02)
2.5707e-03 2.0459e-04
LONGCLKNAME2 (3.3333e+02)
1.8777e-03 1.4462e-04
CLK2 (3.3333e+02) 1.4190e-03 1.1886e-04
CLK3 (3.3333e+02)
1.1038e-03 9.3498e-05
当前,我将表逐行读取为字符串,并尝试使用to_csv将其直接转换为DataFrame。字符串将是:
string = "clock_name total_pwr leakage_pwr \n\
NA* 3.0675e-05 3.0675e-05\n\
CLK1 (1.3333e+02) 6.8333e-02 6.0083e-03\n\
LONGCLKNAME\n\
(3.3333e+02) 2.5707e-03 2.0459e-04\n\
LONGCLKNAME2\n\
(3.3333e+02) 1.8777e-03 1.4462e-04\n\
CLK2 (3.3333e+02) 1.4190e-03 1.1886e-04\n\
CLK3 (3.3333e+02) 1.1038e-03 9.3498e-05"
所以我尝试了:
df = pd.read_csv(StringIO(string), sep='\t')
我想要以下内容:
clock_name total_pwr leakage_pwr
0 NA* 3.0675e-05 3.0675e-05
1 CLK1 (1.3333e+02) 6.8333e-02 6.0083e-03
2 LONGCLKNAME (3.3333e+02) 2.5707e-03 2.0459...
3 LONGCLKNAME2 (3.3333e+02) 1.8777e-03 1.446...
4 CLK2 (3.3333e+02) 1.4190e-03 1.1886e-04
5 CLK3 (3.3333e+02) 1.1038e-03 9.3498e-05
但得到:
clock_name total_pwr leakage_pwr
0 NA* 3.0675e-05 3.0675e-05
1 CLK1 (1.3333e+02) 6.8333e-02 6.0083e-03
2 LONGCLKNAME
3 (3.3333e+02) 2.5707e-03 2.0459e-04
4 LONGCLKNAME2
5 (3.3333e+02) 1.8777e-03 1.4462e-04
6 CLK2 (3.3333e+02) 1.4190e-03 1.1886e-04
7 CLK3 (3.3333e+02) 1.1038e-03 9.3498e-05
我该如何处理换行符?