有一个从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数据框是可变对象,所以我们修改了year列 c['year']//10*10,然后我们将c['year']//10*10作为pandas series对象提供给groupby
问题1: 因为c['year']//10*10是series对象,我们可以使用列名,也可以使用series数据作为groupby聚合属性,对吗?你知道吗
问题2: 当我们修改c['year']//10*10时,我们实际上修改了c['year']列值,换句话说,c数据帧已经被修改了。 铸造数据帧不是也要修改吗?因为c只是cast的别名?你知道吗
你有两个问题。你知道吗
至于第一个问题,^{} 接受列名、序列、NumPy数组和列表、可调用项,或者可能是字典。你知道吗
关于第二个问题,
c
是casts
的别名,是的,但是算术运算会返回一个新的序列。除非重新指定,否则不会对原件进行任何修改。你知道吗相关问题 更多 >
编程相关推荐