QST: why changing dataframe values impacts the array that the dataframe was created from?
- [x] I have searched the [[pandas] tag](https://stackoverflow.com/questions/tagged/pandas) on StackOverflow for similar questions.

- [ ] I have asked my usage related question on [StackOverflow](https://stackoverflow.com).

---

#### Question about pandas

```python
>>> import numpy as np
>>> import pandas as pd

>>> mat = np.array([[1,2], [2,3]])
>>> mat
array([[1, 2],
       [2, 3]])

>>> df = pd.DataFrame(mat)
>>> df.iloc[0,1] = 4

>>> mat
array([[1, 4],
       [2, 3]])
```

Why the value in the original `mat` is also changed? I am not sure if this is a bug or Pandas' way of doing things. I found it to be very confusing.