0

Hi everyone,

I have a huge data file and it goes on like this.

62813,     61344,     68229,     68234,     61349,     61345,     68230   
     62814,     61345,     68230,     68235,     61350,     61346,     68231    
     62815,     61346,     68231,     68236,     61351,     61347,     68232      
     62816,     61347,     68232,     68237,     61352,     51631,     51573    
*ELEMENT,TYPE=S4,ELSET=one                                        
     62817,         1,         2,         4,         3
     62818,         3,         4,        14,        13
     62819,        13,        14,        20,        19
     62820,         2,        25,        26,         4
*ELEMENT,TYPE=S4,ELSET=two                                     
     67450,       241,       242,       244,       243
     67451,       243,       244,       246,       245
     67452,       242,       253,       254,       244
     67453,       244,       254,       255,       246

i need to delete the following lines from the file

*ELEMENT,TYPE=S4,ELSET=one                                        
     62817,         1,         2,         4,         3
     62818,         3,         4,        14,        13
     62819,        13,        14,        20,        19
     62820,         2,        25,        26,         4

so that the final output looks like this

62813,     61344,     68229,     68234,     61349,     61345,     68230   
     62814,     61345,     68230,     68235,     61350,     61346,     68231    
     62815,     61346,     68231,     68236,     61351,     61347,     68232      
     62816,     61347,     68232,     68237,     61352,     51631,     51573    
*ELEMENT,TYPE=S4,ELSET=two                                     
     67450,       241,       242,       244,       243
     67451,       243,       244,       246,       245
     67452,       242,       253,       254,       244
     67453,       244,       254,       255,       246

Thank you

3
Contributors
2
Replies
3
Views
6 Years
Discussion Span
Last Post by pyTony
0

How many Giga/Terabytes is this huge file? You need only to remove this specific lines, not certain element blocks?

This code drops sections that are in discard_blocks set.

discard_blocks = {'*ELEMENT,TYPE=S4,ELSET=one' }
with open('data.txt') as datain, open('data_out.txt', 'w') as dataout:
    writeout=True
    for line in datain:
        if line.rstrip() in discard_blocks:
            writeout = False
        elif line.startswith('*ELEMENT'):
            writeout = True
        if writeout:
            dataout.write(line)

Edited by pyTony: n/a

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.