I am running the Wolfram Language inside a Jupyter Notebook. Since Wolfram Research made the Wolfram Engine free last month, and since there is now a respectable Jupyter client for the Wolfram Engine (https://github.com/WolframResearch/WolframLanguageForJupyter), one can do a whole lot of computation for free. I've found bugs and limitations, yes, but it makes the many capabilities of the Wolfram Language, including its knowledgebase, available to a huge audience. Plus, although the Mathematica Front End is much more sophisticated than Jupyter, the latter has some nifty features and, above all, is free.
Plot[Sin[x],{x,0,7},PlotLabel->"2D Plots Work Pretty Well!",PlotLegends->"I'm missing something"]
Framed[Plot3D[Sin[Cos[x+2y]-x],{x,0,6},{y,0,2\[Pi]},ColorFunction->(Hue[#]&),
MeshFunctions->{#3&},PlotLabel->"3D Plots work!"]]
With[{mortgageExpression=k/.First@Solve[0==x[t]/.First@RSolve[{x[0]==1,x[t+1]==(1+r)x[t]-k},x[t],t]/.t->30,k]},
Plot[mortgageExpression,{r,0.01,0.09},AxesLabel->{"Interest Rate","Yearly Payment Fraction"},
PlotLabel->Style["Mortgage Amortization Payments\n
as Function of Interest Rate",14]]
]
Takes categorical data on the Titanic and uses automated machine learning to build a classifier that will predict whether a person survives.
cl=Classify[titanic];
cmo=ClassifierMeasurements[cl,ExampleData[{"MachineLearning", "Titanic"}, "TestData"]];
cmo["ConfusionMatrixPlot"]
Now build a custom neural network to do the same thing.
data = ExampleData[{"Dataset", "Titanic"}];
data = DeleteMissing[data, 1, 2];
{trainingData, testData} = TakeDrop[RandomSample[data], 800];
classEncoder =
NetEncoder[{"Class", {"1st", "2nd", "3rd"}, "UnitVector"}];
genderEncoder =
NetEncoder[{"Class", {"male", "female"}, "UnitVector"}];
net = NetGraph[{CatenateLayer[], LinearLayer[],
LogisticSigmoid}, {{NetPort["class"], NetPort["age"],
NetPort["sex"]} -> 1, 1 -> 2 -> 3 -> NetPort["survived"]},
"class" -> classEncoder, "age" -> "Scalar", "sex" -> genderEncoder,
"survived" -> "Boolean"];
results = NetTrain[net, trainingData, All, MaxTrainingRounds -> 50];
trained = results["TrainedNet"];
trained[<|"class" -> "2nd", "age" -> 24, "sex" -> "female"|>]
Entity["DogBreed", "SiberianHusky"]["Image"]
CombinedEntityClass[FilteredEntityClass["Isotope",
EntityFunction[i, i["Element"] == Entity["Element", "Hydrogen"] ||
i["Element"] == Entity["Element", "Lithium"]]], EntityClass["Element", "Period1"],
"Element" -> "Entity", "Left"][{EntityProperty["Isotope", "Name"],
EntityProperty["Element", "Name"]}]
ResourceFunction[
"MapAtKey"][{"a" -> (#^2 &), "b" -> (#/2 &)}, <|"a" -> 10, "b" -> 2, "c" -> 3|>]
Dataset[{{3,4},{5,6}}]
CommunityGraphPlot[
ExampleData[{"NetworkGraph", "DolphinSocialNetwork"}]]
ExternalEvaluate["Python", "[i**2 for i in range(10)]"]
ExternalEvaluate["Python","import calendar
[calendar.day_name[i] for i in range(7)]"](* can even do imports!!*)