我是Python新手,对这种语言没有太多经验。我有一个CSV文件,从中我必须将数据转换成XML结构。
我想用熊猫和ElementTree
来做。你知道吗
我读了一个教程来这么做,但我不能理解代码的结构。你知道吗
CSV文件如下所示
test_name,health_feat,result
test_1,20,1
test_2,23,1
test_3,24,0
test_4,12,1
test_5,45,0
test_6,34,1
test_7,78,1
test_8,23,1
test_9,12,1
test_10,12,1
最后一个XML文件应该是这样的,但是我不确定在应用ElementTree
时如何处理属性:
<xml version = '1.0' encoding = 'UTF-8'>
<Test Testname = 'test_1' >
<Health_Feat>20</health_feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_2'>
<Health_Feat>23</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_3'>
<Health_Feat>24</Healt_Feat>
<Result>0</Result>
</Test>
<Test Testname = 'test_4'>
<Health_Feat>30</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_5'>
<Health_Feat>12</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_6'>
<Health_Feat>45</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_7'>
<Health_Feat>34</Healt_Feat>
<Result>0</Result>
</Test>
<Test Testname = 'test_8'>
<Health_Feat>78</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_9'>
<Health_Feat>23</Healt_Feat>
<Result>1</Result>
</Test>
<Test Testname = 'test_10'>
<Health_Feat>12</Healt_Feat>
<Result>1</Result>
</Test>
</Tests>
目前,我尝试了这样的东西,但我不知道如何告诉程序,其中一行采取从csv。你知道吗
from lxml import etree as et
import uuid
df = pd.read_csv('mytests.csv', sep = ',')
root = et.Element(Tests)
for index, row in df.iterrows():
if row['test_name'] == 'test_1':
Test = et.SubElement(root, 'Test')
Test.attrib['fileUID']
health_feat = et.subElement('health_feat')
Result = et.subElement('Result')
else:
Tests = et.subElement(root, 'Tests')
et.ElementTree(root).write('mytests.xml', pretty_print = True, xml_declaration = True, encoding = 'UTF-8', standalone = None)
像这样:
并在for循环中为csv的每一行调用函数
相关问题 更多 >
编程相关推荐