The first clue tells you that By The Lake (1st) and By The Lake (2nd) are blue. By The Lake (1st) tells you that In The Bush (1st), In The Bush (3rd) and In The Bush (5th) are one color, so the latter two must be pink also.
All the eggs in the grass are primary colors (by By The Lake (2nd)), so they each must be either blue or yellow (since there are no red eggs). Since the first egg found in each location must be a different color (by In The Bush (3rd)), In The Grass (1st) must be yellow because blue is in By The Lake (1st).
Since none of the eggs on the playground are green (by In The Bush (5th)), On The Playground (1st) must be purple because pink, blue and yellow are already represented in the first row. This means that Under The Tree (1st) is green.
Under The Tree (1st) tells you directly that On The Playground (5th) is yellow. In turn, On The Playground (5th) tells us that yellow cannot be in any 2nd row, and so this clue combined with the fact that all the eggs in column 5 are primary colors means that In The Grass (2nd) is blue.
In The Grass (2nd) tells you directly that In The Bush (4th) is yellow.
Because of the fact that no color can be repeated in the last row (by In The Bush (3rd)), In The Grass (5th) is blue because it is the only of two colors, along with yellow, that can be in the grass, and On The Playground (5th) is already yellow. This makes two blue eggs in column 5, so the rest must be yellow–exactly 2 blue eggs were found in 3 different locations, and only primary colors were found in the grass.
Process of elimination using clues On The Playground (1st), In The Grass (1st), On The Playground (5th), and In The Grass (5th) tells us that In The Bush (2nd) must be purple. Also, exactly one purple egg was found in every location except for the grass. Purple had not been found in the bush yet, and there was only one remaining space (by In The Bush (2nd)) for it to go.
In The Bush (2nd) means that Under The Tree (5th) cannot be green, so it must be purple, because the last eggs found were all different colors (by In The Bush (3rd)). Thus, By The Lake (5th) must be green.
Also by In The Bush (3rd) and the fact that there is exactly one purple egg in each location (by In The Grass (3rd)), By The Lake (3rd) must be purple and since there were no blue eggs found under the tree (by In The Bush (1st)), On The Playground (3rd) must be blue, and thus Under The Tree (3rd), green.
Since there are two yellow eggs on the playground (by Under The Tree (1st)) and the 2nd egg found was not yellow (by On The Playground (5th)), then On The Playground (4th) is yellow, meaning On The Playground (2nd) is blue since there exactly two blue eggs on the playground (by In The Grass (1st)).
By The Lake (4th) cannot be yellow since it would violate the rule that green eggs were never found after yellow eggs (by Under The Tree (5th)). It cannot be blue since there are already two blue eggs by the lake, it cannot be purple since there is already a purple in that location (by In The Grass (3rd)), and cannot be pink since pink and green eggs were never found together (by In The Grass (5th)). Thus it must be green.
Under The Tree (2nd) cannot be yellow since yellow was never found 2nd (by On The Playground (5th)). It cannot be blue since there were no blues under the tree (by In The Bush (1st)). It cannot be purple since there is already a purple in that location (by In The Grass (3rd)), and cannot be pink since pink and green eggs were never found together (by In The Grass (5th)). Thus it must be green.
Under The Tree (4th) cannot be green since there are already three green eggs in that location (by On The Playground (1st)). It cannot be blue since there were no blues under the tree (by In The Bush (1st)). It cannot be purple since there is already a purple in that location (by In The Grass (3rd)), and cannot be pink since pink and green eggs were never found together (by In The Grass (5th)). Thus it must be yellow.