# The concept of Social Computing in Python

When you try googling something about the thing you may want to know about or just want to recall something, for example, if you are trying to remember a song you listened earlier but failed to recall it, only you can remember about the song is where it was shot then you may not find it by googling it, what you can do is write a post and share it on social media. If someone in your friend circle knows about it will give you the answers. You may or may not find your answer. But what if there are many people who answered your question and one of them was the answer, that means you got the answer just by sharing your problem on social media. So we can say that the power of many common people beats the power of one professional.

Here comes the concept of Social computing which many sites like Quora, StackOverflow, etc use.

#### Wisdom of crowds

According to the concept of the **wisdom of crowds**, when many people guess about a thing then there is a probability that they have guessed it right. This is because some people may have underestimated it and some may have overestimated it, so it’s **mean** comes to be near about the exact answer.

It is based on the fact that **Underestimation cancels the overestimation **part.

**Calculation of trimmed mean:**

- Calculate 10% of the total crowd.
- Remove that number of calculated values from the list i.e., 10% of underestimated values and 10% of overestimated values.
- Now calculate the mean.

Below is the implementation.

## Python3

`# Python program to demonstrate` `# social computing` `from` `statistics ` `import` `mean` `# Estimation provided by various` `# users` `Estimates ` `=` `[` `1000` `, ` `1010` `, ` `1223` `, ` `52223` `, ` `2411` `,` ` ` `322` `, ` `563` `, ` `1246` `, ` `1000` `, ` `2333` `, ` `4666` `, ` `2133` `]` `Estimates.sort()` `tv ` `=` `int` `(` `0.1` `*` `len` `(Estimates))` `# Removing Underestimating value` `Estimates ` `=` `Estimates[tv:]` `# Removing overestimating value` `Estimates ` `=` `Estimates[:` `len` `(Estimates)` `-` `tv]` `print` `(mean(Estimates))` |

**Output:**

1758.5