我正在为一个计算生物学研究项目整理一些数据。然而,一个问题即将出现,一些狗出生从同一窝在同一天有相同的母亲,但多个父亲。我需要找到这些数据点并返回它们,以便手动返回到文档并检查它们。有没有人知道一个更好的方法,使每一套不需要30多分钟完成?你知道吗
到目前为止,我一直在尝试使用pandas来浏览数据,我不是CS向导。我基本上使用for循环逐个检查数据,即使是较小的数据集也有大约10k的数据。你知道吗
data = raw_data.loc[:,['Order', 'Name', 'Sire', 'Dam', 'Registration', 'DOB']]
length = len(data.index)
for i in range(0,length,1):
for j in range(i+1,length,1):
if (data.iat[i,5]==data.iat[j,5]): #Same date of birth
if (data.iat[i,3]==data.iat[j,3]): #Same mother
if (data.iat[i,2]!= data.iat[j,2]): #Different father
print(data.iat[i,0]+data.iat[j,0])
您可以按出生日期和母亲对数据进行分组,然后计算父列中不同值的数目。将对每组DOB和Dam计算结果。您将对结果大于1的所有组感兴趣。你知道吗
欢迎使用Stackoverflow。你知道吗
除了米格尔的建议之外,还有一个建议
为了进行测试,我会把你的文件精简为一个小样本,其中包括你正在处理的问题。你不想浪费CPU时间,直到你知道程序的行为。你知道吗
投标资料表
相关问题 更多 >
编程相关推荐