键,将文本文件值转换为熊猫

时间:2020-04-23 17:18:25

标签: python-3.x pandas

我有一个键值格式的文本文件,其中没有真正的唯一定界符,我正尝试将其插入pandas数据框,最后可能会插入Excel。

这里是2行。

因此,除了第一个单词,其余的都是等号左侧的键,而value是第一个空格,除非字符串在2个引号内。

TEST NHM=TEPOSIT FL=(CITY,DIRECTION,LEASE)
TEST NHM=UNFIN FL=(DIRECTION)
LOG EQUATE=TXT_HLPER FE=F_STR RTC=NA FULL="To fulfill central requirements type %int_k" FAIL=FALSE KEY=100 STRTY=CENTRAL USE=TRUE

这些键还有更多键,并且所有行都不包含所有键。

我有2个可行的想法,但我想知道有没有更好的解决方案。

想法1:在数据框中插入每一行文本,使用预定义键,在这里我将使用regex查找值

( EQUATE=(\S*) )

或想法2: 在双引号内用_替换空格,然后使用空格作为定界符,等于说左侧是键,右侧是值。

def replacespace(text):
    return text.replace(text[text.index('"')+1:text.index('"'),text.index('"')+1],text["":""].replace(" ", "_"))

list = replacespace(log.split(","))

^^我知道,非常pythonic:D

但是,实际上,有更好的方法可以解决这个问题,所以有什么主意吗?

谢谢

0 个答案:

没有答案