Data columns in 'Person' Dataframe:
TodaysDate non-null datetime64[ns]
YOB non-null float64
Person['Age'] = map(sum, (Person.ix[0,'TodaysDate']).year, -(Person['YOB']))
TypeError: 'int' object is not iterable
Person['Age'] = map((Person.ix[0,'TodaysDate']).year - Person['YOB'])
TypeError: map() must have at least two arguments.
有什么想法可以如何使用map函数从float列yob
中减去datetime列todaysdate
并将该值放入age
列吗?我希望对DataFrame中的每一行都这样做。
谢谢你!
数据:
In [5]: df
Out[5]:
YOB
0 1955
1 1965
2 1975
3 1985
您不需要额外的列TodaysDate
-您可以动态地获取它:
In [6]: df['Age'] = pd.datetime.now().year - df.YOB
In [7]: df
Out[7]:
YOB Age
0 1955 62
1 1965 52
2 1975 42
3 1985 32
或者,您可以使用dataframe.eval()方法:
In [16]: df
Out[16]:
YOB
0 1955
1 1965
2 1975
3 1985
In [17]: df.eval("Age = @pd.datetime.now().year - YOB", inplace=True)
In [18]: df
Out[18]:
YOB Age
0 1955 62
1 1965 52
2 1975 42
3 1985 32
因此,我目前在R中有一个dataframe,其中:
问题内容: 我目前正在尝试从MongoDB中提取数据库,并使用Spark来将其提取到ElasticSearch中。 Mongo数据库具有纬度和经度值,但是ElasticSearch要求将它们强制转换为类型。 Spark中是否可以将and 列复制到or 的新列? 任何帮助表示赞赏! 问题答案: 我假设您从某种平面模式开始,如下所示: 首先让我们创建示例数据: 一种简单的方法是使用udf和case类:
对如何实现这一点有什么想法吗?
那么,如何使用PySpark向现有的DataFrame添加一个新列(基于Python vector)呢?
问题内容: 我想在中添加具有任意值的列(每行相同)。使用以下内容时出现错误: 看来我可以通过添加和减去其他一列(这样它们加到零)然后添加我想要的数字(在这种情况下为10)来欺骗函数按我的意愿工作: 这绝对是骇客,对吧?我认为还有一种更合法的方法吗? 问题答案: Spark 2.2+ Spark 2.2引入了,和(SPARK-19254),并且应该支持以下调用(Scala): 的第二个参数应该是,因
本文向大家介绍向Pandas中的现有DataFrame添加新列,包括了向Pandas中的现有DataFrame添加新列的使用技巧和注意事项,需要的朋友参考一下 Pandas 数据框是一种二维数据结构,即,数据以表格的形式在行和列中对齐。可以使用python dict,list和series等创建它。在本文中,我们将看到如何在现有数据框中添加新列。因此,首先让我们使用pandas系列创建一个数据框。