我正在尝试在 Pandas 数据框中设置一个新列(实际上是两列),数据来自其他数据框。
我有以下两个数据框(它们是用于此目的的示例,原始数据框要大得多):
In [116]: df0
Out[116]:
A B C
0 0 1 0
1 2 3 2
2 4 5 4
3 5 5 5
In [118]: df1
Out[118]:
A D E
0 2 7 2
1 6 5 5
2 4 3 2
3 0 1 0
4 5 4 6
5 0 1 0
Run Code Online (Sandbox Code Playgroud)
我想有一个新的数据框(或添加到 df0,无论如何),如下所示:
df2:
A B C D E
0 0 1 0 1 0
1 2 3 2 7 2
2 4 …Run Code Online (Sandbox Code Playgroud) 如果我有包含 5 个类别(A、B、C、D、E)的数据和一个客户数据集,其中每个客户可以属于一个、多个或不属于任何一个类别。我怎样才能获取这样的数据集:
id, categories
1 , [A,C]
2 , [B]
3 , []
4 , [D,E]
Run Code Online (Sandbox Code Playgroud)
并将类别列转换为一个热编码向量,如下所示
id, categories, encoded
1 , [A,C] , [1,0,1,0,0]
2 , [B] , [0,1,0,0,0]
3 , [] , [0,0,0,0,0]
4 , [D,E] , [0,0,0,1,1]
Run Code Online (Sandbox Code Playgroud)
有没有人在火花中找到一种简单的方法来做到这一点?
随着Spark的兴起,Scala作为数据科学应用程序首选的编程语言获得了巨大的发展势头.
为了提高数据科学应用程序的工作效率,已经发布了专门的IDE
Scala有类似的东西吗?
我有一个36k行的数据集.我想用pandas从它中随机选择9k行.我该如何完成这项任务?
我有多个文件需要分析。首先,我将它们读入 BitString.Bits 列表。然后我将每个文件位拆分为我想要查看的特定部分并将它们保存到 Pandas.DataFrames 列表中。每个文件一个 DF。
现在为了进一步的绘图和分析目的,我想将所有数据存储在一个 Xarray.Dataset 中,其中我将 DataFrames 沿第三个轴堆叠,名称为“数据集”。
我试图将每个 DataFrame 连接到一个 DataSet:
xr.concat(data_df[:], dim="dataset")
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误,说我不能连接 DataArray 或 DataSets 以外的东西。我可以将 DataFrame 动态转换为 DataArrays 吗?
谢谢你的帮助!
来自德国的问候
简
我正在尝试使用GaussianProcessRegressor 作为 scikit-learn 0.18.1 的一部分
我正在训练 200 个数据点,并为我的内核使用 13 个输入特征 - 一个常数乘以具有十二个元素的径向基函数。该模型运行时没有任何抱怨,但如果我多次运行相同的脚本,我会注意到有时会得到不同的解决方案。可能值得注意的是,一些优化的参数正在运行到我提供的范围内(我目前正在研究哪些功能很重要)。
我尝试将参数n_restarts_optimizer增加到 50,虽然这需要更长的时间来运行,但并没有消除明显的随机性元素。虽然我没有运气,但似乎可以更改优化器本身。从快速扫描来看,语法上最相似的是 scipy's fmin_tncand fmin_slsqp(其他优化器不包括边界)。但是,使用其中任何一个都会导致其他问题:例如,fmin_tnc不会返回目标函数的最小值。
关于如何拥有更具确定性的脚本有什么建议吗?理想情况下,无论迭代如何,我都希望它打印相同的值,因为就目前而言,它感觉有点像彩票(因此得出任何结论都是有问题的)。
我正在使用的代码片段:
from sklearn.gaussian_process import GaussianProcessRegressor as GPR
from sklearn.gaussian_process.kernels import RBF, ConstantKernel as C
lbound = 1e-2
rbound = 1e1
n_restarts = 50
n_features = 12 # Actually determined elsewhere in the code
kernel = C(1.0, (lbound,rbound)) * RBF(n_features*[10], (lbound,rbound))
gp = GPR(kernel=kernel, n_restarts_optimizer=n_restarts)
gp.fit(train_input, train_outputs)
test_model, sigma2_pred = gp.predict(test_input, return_std=True)
print gp.kernel_
Run Code Online (Sandbox Code Playgroud) 我正在使用Datacamp平台为Titanic做Kaggle教程。
我知道在熊猫中使用.loc-使用列标签按行选择值...
我感到困惑的是,在Datacamp教程中,我们想在“性别”列中找到所有“男性”输入,并将其替换为0。他们使用以下代码来做到这一点:
titanic.loc[titanic["Sex"] == "male", "Sex"] = 0
Run Code Online (Sandbox Code Playgroud)
有人可以解释一下它如何工作吗?我以为.loc接受行和列的输入,那么==的作用是什么?
不应该是:
titanic.loc["male", "Sex"] = 0
Run Code Online (Sandbox Code Playgroud)
谢谢!
使用iris数据集,我试图为每个变量计算z得分。通过执行以下操作,我得到的数据格式整齐:
library(reshape2)
library(dplyr)
test <- iris
test <- melt(iris,id.vars = 'Species')
Run Code Online (Sandbox Code Playgroud)
这给了我以下内容:
Species variable value
1 setosa Sepal.Length 5.1
2 setosa Sepal.Length 4.9
3 setosa Sepal.Length 4.7
4 setosa Sepal.Length 4.6
5 setosa Sepal.Length 5.0
6 setosa Sepal.Length 5.4
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试为每个组创建一个z分数列(例如Sepal.Length的z分数与Sepal。Width的z分数不兼容)时,请使用以下命令:
test <- test %>%
group_by(Species, variable) %>%
mutate(z_score = (value - mean(value)) / sd(value))
Run Code Online (Sandbox Code Playgroud)
所得的z得分尚未分组,并且基于所有数据。
使用dpylr按组返回z分数的最佳方法是什么?
非常感谢!
我有一个简单的问题,我似乎找不到严格的答案。
假设我有一个包含日期、开盘价、最高价、最低价、收盘价和成交量的数据框。
我要做的是首先找到我可以使用的当前日期:
today = pd.datetime.today().date()
Run Code Online (Sandbox Code Playgroud)
我的问题是从当前日期选择过去 20 天的数据。
我需要选择最后 20 行,因为我需要在此数据集的近列中找到最高和最低值。
任何指针都会有很大帮助。我在谷歌上搜索了一段时间,并不断找到不同的答案。
谢谢!
我如何转储带有其自身依赖项的pickle对象?
泡菜对象通常是从笔记本生成的。
我尝试virtualenv为笔记本创建跟踪依赖关系的方法,但是这样我不仅获得了pickle对象的导入,而且还获得了应用程序其他位置使用的更多对象,这虽然足够好,但不是最佳解决方案。
我正在尝试建立MLOps流。快速说明:MLOps是一个流行语,它是用于机器学习的DevOps的同义词。不同公司提供了不同的PaaS / SaaS解决方案,它们通常解决以下问题:
我将跳过存储部分,重点介绍前两个部分。
就我而言,我试图使用良好的旧TeamCity建立此流程,其中模型是sk-learn生成的咸菜对象。要求是:
requirements.txt。 apiPort: 8080
apiName: name-tagger
model: model-repository.internal/model.pickle
requirements: model-repository.internal/model.requirements
predicterVersion: 1.0
Run Code Online (Sandbox Code Playgroud)
requirements.txt。它是pickle模型的API包装器/层,将模型加载到内存中并提供来自其余端点的预测。然后,TeamCity中的构建配置将解析该文件并执行以下操作:
requirements.txt将预测器与requirements.txt泡菜模型合并作为流的输出,我有一个包含REST API的程序包,该API使用了pickle模型并暴露给定义的端口。
data-science ×10
python ×6
pandas ×4
scala ×2
scikit-learn ×2
apache-spark ×1
dataframe ×1
dependencies ×1
devops ×1
dplyr ×1
ide ×1
java ×1
kaggle ×1
numpy ×1
pickle ×1
r ×1
scipy ×1