前言:我对使用Python还不熟悉。你知道吗
我正在清理一个数据分布在多行的文件。我正在努力寻找一个解决方案,将多个文本字符串连接到一个单元格。.csv数据如下所示:
name,date,description
bundy,12-12-2017,good dog
,,smells kind of weird
,,needs to be washed
每个条目之间也有一到两个空行。你知道吗
用于“description”的行数不一致。有时只有一个细胞,有时多达四个。理想的输出将这些多行转换为一行有用的数据,而不会浪费所有空间。我想也许我可以通过跨几列复制数据,上移,然后以某种方式迭代来创建一系列掩码。不过,我还没有找到一个与我正在尝试的方法相匹配的解决方案。这就是我目前所处的位置:
#Add column f description stuff and shift up a row for concatenation
DogData['Z'] = DogData['Y'].shift(-1)
DogData['AA'] = DogData['Z'].shift(-1)
DogData['AB'] = DogData['AA'].shift(-1)
#create series checks to determine how to concat values properly
YNAs = DogData['Y'].isnull()
ZNAs = DogData['Z'].isnull()
AANAs = DogData['AA'].isnull()
这里的想法基本上是迭代列“Y”,检查列“Z”中的同一行是否为NA或有值,如果有,则concat。如果不是,就用Y中的值。如果在任何后续列中遇到NA,则执行该逻辑,但停止。我不知道怎么做,或者有没有更有效的方法。你知道吗
我该怎么做才能得到最终的结果?我无法找到正确的方法来迭代或连接我希望的方式。你知道吗
我不太明白你的意思。我把文本保存为csv文件,并成功地将其读入数据框。这不是你想要的吗?你知道吗
相关问题 更多 >
编程相关推荐