我想从here中读取txt文件,使用Dota 2 mmrs为不同的玩家读取,它的格式如下:
1) "103757918"
2) "1"
3) "107361667"
4) "1"
5) "108464725"
6) "1"
7) "110818765"
8) "1"
9) "111436016"
10) "1"
11) "113518306"
12) "1"
13) "118896321"
14) "1"
15) "119780733"
16) "1"
17) "120360801"
18) "1"
19) "120870684"
20) "1"
21) "122616345"
22) "1"
23) "124393917"
24) "1"
25) "124487030"
account_id(例如103757918)后面跟有玩家的mmr(例如1)。我怎么能在一个有两列= account_id,mmr的Pandas数据框中读到这个呢?
我不需要索引号。
3条答案
按热度按时间qoefvg9y1#
您可以使用read_table,因为使用\n作为分隔符的read_csv不起作用。然后按如下方式移动和排列值:
输出将为:
7lrncoxx2#
按照通常的方式读取数据,每隔一行对数据进行切片并进行concat。之后,您可以将列重命名为您想要的任何名称。
以这种方式对数据进行切片假设第一个值始终是account_id,后跟mmr。请注意,在示例数据中,第25行缺少mmr,因此为空。
以下是基于示例数据的工作示例
dxxyhpgq3#
你可以在多行模式下使用正则表达式来查找带引号的对。我喜欢这个解决方案,因为唯一的难题是正则表达式本身。