I don't know what this means, nor do I know how you would get the wrong tag name.
Yep, just add the conditional back in to the comprehension.
def getDataSet(values, faultNodes):
headers = ['Slave', 'Value', 'Node']
cnvValues = [int(iVal) for iVal in values[1:-1].split(',')]
cnvNodes = [int(iVal) for iVal in falutNodes[1:-1].split(',')]
data = [[i, value, node] for i, (value, node) in enumerate(zip(cnvValues, cnvNodes)) if value > 0]
return system.dataset.toDataSet(headers, data)