count_fly = 0

for idx in range(len_human):
    if result2_human[1][idx] == result2_human[2][idx]:
        count_human += 1

for idx in range(len_fly):
    if result2_fly[1][idx] == result2_fly[2][idx]:
        count_fly += 1

print 1.0 * count_human / len_human
print 1.0 * count_fly / len_fly
"""
Question 3
"""
scoring_distribution = Project_4.generate_null_distribution(
    seq_human, seq_fly, scoring_matrix, 1000)

plt.bar(scoring_distribution.keys(),
        scoring_distribution.values(),
        1 / 1.5,
        color="blue")
plt.title("Score Distribution")
plt.xlabel("Score")
plt.ylabel("Normalized Number")
plt.show()

# Compute mean
mean = 0.0
for score in scoring_distribution.keys():
    mean += score * scoring_distribution[score]
for idx in range(len_human):
    if result2_human[1][idx] == result2_human[2][idx]:
        count_human += 1
        
for idx in range(len_fly):
    if result2_fly[1][idx] == result2_fly[2][idx]:
        count_fly += 1

print 1.0*count_human/len_human
print 1.0*count_fly/len_fly


"""
Question 3
"""
scoring_distribution = Project_4.generate_null_distribution(seq_human, seq_fly, scoring_matrix, 1000)

plt.bar(scoring_distribution.keys(), scoring_distribution.values(), 1/1.5, color ="blue")
plt.title("Score Distribution")
plt.xlabel("Score")
plt.ylabel("Normalized Number")
plt.show()

# Compute mean  
mean = 0.0
for score in scoring_distribution.keys():
    mean += score*scoring_distribution[score]

mean = mean/1000.0

# Compute standard deviation