熊猫原始数据框已更改

时间:2018-12-23 14:48:39

标签: python pandas pandas-groupby

从《熊猫指南》示例的csv创建了一个数据框: 例如:

 cast=pd.read_csv('cast.csv', index_col=none, encoding='utf-8')
cast.head()

title year
0 Macbeth 1913
1 Macbeth 1997
2 Macbeth 1998
3 Macbeth 2006

然后我们这样做

 c = casts
 c.groupby( [c['year']//10*10, 'type'] ).size().head(8)

由于c数据帧是可变对象,所以我们通过修改年份列 c ['year'] // 10 * 10,然后我们将c ['year'] // 10 * 10作为熊猫系列对象进行分组

问题1: 由于c ['year'] // 10 * 10是序列对象,我们可以使用列名称,也可以将序列数据用作groupby聚合属性?

问题2: 当我们修改c ['year'] // 10 * 10时,我们实际上是修改了c ['year']列值,换句话说,c数据框已被修改。 投射数据框也不会被修改吗?因为c只是cast的别名?

1 个答案:

答案 0 :(得分:2)

您有两个问题。

关于您的第一个问题,groupby接受列名,系列,NumPy数组和列表,可调用项或可能的字典。

关于第二个问题,ccasts的别名,可以,但是算术运算会导致返回新的序列。除非您将其分配回去,否则不会对原始文​​件进行任何修改。