teleren/devto huggingface dataset:
XG Boost for Regression
Tags: datascience, machinelearning
Published: 2021-01-11 04:40:59

<span>Photo by <a href="https://unsplash.com/@markusspiske?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Markus Spiske</a> on <a href="https://unsplash.com/s/photos/algorithm?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span>

In the previous posts, I described how the Gradient Boosted Trees algorithm works for [regression](https://dev.to/xsabzal/gradient-boost-for-regression-1e42) and [classification](https://dev.to/xsabzal/gradient-boost-for-classification-2f15) problems. However, for the bigger datasets, the training could be a slow process. Some advanced versions of boosted trees address this issue, like Extreme Gradient Boost (XG Boost), Light GBM, and CatBoost. Here I will give an overview of how the XG Boost works for the regression.

1) Define initial values and hyperparameters.

1a) Define differentiable Loss Function, e.g. 'Least Squares' : 
L(yi,pi) =1/2 (yi - pi)^2, where 
y-True values, p- predictions 

1b) Assign a value to the initial predictions (p), by default, it is the same number for all observations, e.g. 0.5.

1c) Assign values to parameters:
learning rate (eta), max_depth, max_leaves, number of boosted rounds etc.
and regularization hyperparameters: lambda, gamma. 
Default values in the XG Boost [documentation](https://xgboost.readthedocs.io/en/latest/parameter.html).  

2) Build 1 to N number of trees iteratively.
2a) Get Residuals (yi-pi) to fit observations to the tree 
Note: 
-Similar to the ordinary Gradient Boosted Trees, we fit trees iteratively to the residuals, not to the predictions. 

-Building trees in XG boost a bit different compare to the ordinary regression trees, where we could use gini or entropy to get the gain. In XG boost we use the formula which is derived from the optimization problem of the objective function(objective function is a sum of the loss function and regularization terms). 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hr8tiv5cgh0ivkq96lyd.png)

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/y2iwos5bmj7h3kpbp635.png)

G - represents sum of gradients (first derivate of a loss function with respect to prediction p), in our case its negative sum of the of the residuals in the leaf (L-left leaf, R-right leaf).

H - second derivative of Loss Function with respect to prediction p, and here equals to number of the residuals

-XG boost allows using a greedy algorithm or approximate greedy algorithm(for bigger datasets) when building the trees and calculating gains.

2c) once we choose the best tree by Gain calculated in the previous step and build the full tree(size of the tree will be limited either by gain values, which also includes gamma for pruning in the formula or by parameters we specified initially).
Now compute the output value for each leaf in the tree.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/h0tufkca8dtxteobj8ca.png)


2d) Compute new prediction values as 
new_p =previous_p + eta * output_value

3) get final predictions
Get the Current Worksheet Name Only in Excel Office 365!!
Tags: excelpreface, getthecurrentworkshe, excelbasics, exceltutorials
Published: 2021-01-18 04:00:27

---
title: Get the Current Worksheet Name Only in Excel Office 365!!
published: true
date: 2021-01-11 04:34:38 UTC
tags: ExcelPreface,Getthecurrentworkshe,ExcelBasics,ExcelTutorials
canonical_url: https://geekexcel.com/get-the-current-worksheet-name-only-in-excel-office-365/
---

You can easily get the current worksheet name in an Excel spreadsheet. Do you want to know how to do that? then this article will help you to understand the instructions to complete the task. You can use a combination of the [**MID** function](https://geekexcel.com/how-to-use-mid-function-in-microsoft-excel-365/), [**CELL** function](https://geekexcel.com/use-cell-function-in-microsoft-excel-365-simple-methods/), and [**FIND** function](https://geekexcel.com/how-to-use-find-function-in-microsoft-excel-365/). Let’s get into this article.

## Get the Current Worksheet Name:

To get the current spreadsheet name, we have to use three functions such as **MID, CELL** and **FIND** functions.

- **MID Function –** It extracts the number (starting from the left side) or characters from the given string.
- **CELL Function –** The Excel CELL function returns information about a cell in a worksheet. The type of information to be returned is specified as info type.
- **FIND Function –** This function will find out the location of the text and returns the position as a number.

### Use the below formula to get the current Worksheet name:

**=[MID](https://geekexcel.com/how-to-use-mid-function-in-microsoft-excel-365/)([CELL](https://geekexcel.com/use-cell-function-in-microsoft-excel-365-simple-methods/)(“filename”,B1),[FIND](https://geekexcel.com/how-to-use-find-function-in-microsoft-excel-365/)(“]”,[CELL](https://geekexcel.com/use-cell-function-in-microsoft-excel-365-simple-methods/)(“filename”,B1))+1,255)**  

- You need to [open the workbook](https://geekexcel.com/open-a-workbook-using-shortcut-in-excel-365/).
- Then apply the formula in any cell. Here, we have shown the formula in **Cell B5.**

![Type the formula](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/EXCEL_AKQbEI4CCC.png)<figcaption id="caption-attachment-20815">Type the formula</figcaption>

- After applying the formula, you will get the **result** as shown in the below screenshot.

![Result](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/EXCEL_BrD700frHX.png)<figcaption id="caption-attachment-20816">Result</figcaption>

## Verdict:

In the above article, you can clearly learn the instructions to **get the current worksheet name in an Excel** spreadsheet using MID, CELL, and FIND functions. We have shown you an example for your quick reference, so it might be helpful to you. Leave your **feedback** in the below comment box. Thanks for visiting **[Geek Excel!!](https://geekexcel.com/)** Keep Learning!!
How to Remove Currency Format in Excel Office 365?
Tags: excelpreface, excelbasics, exceltutorials, removecurrencyformat
Published: 2021-01-18 04:00:17

---
title: How to Remove Currency Format in Excel Office 365?
published: true
date: 2021-01-11 04:33:02 UTC
tags: ExcelPreface,ExcelBasics,ExcelTutorials,Removecurrencyformat
canonical_url: https://geekexcel.com/remove-currency-format-excel/
---

When working with the Excel sheets, sometimes you want to **remove the currency format**. Do you have any good methods for solving this task in Excel? So here I will introduce you to some quick tricks to deal with this problem. Let’s get into this article!! Get an official version of ** MS Excel**  from the following link: [https://www.microsoft.com/en-in/microsoft-365/excel](https://www.microsoft.com/en-in/microsoft-365/excel)

## Steps to Remove the Currency Format:

- First, you need to select the data range that contains the currency values.

![Data range](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Data-range.png)<figcaption id="caption-attachment-20830">Data range</figcaption>

- Then, you need to click the **“[Home](https://geekexcel.com/use-shortcut-to-open-home-tab-in-excel-office-365/)“** tab from the [**Ribbon**](https://geekexcel.com/use-and-customize-ribbon-commands-in-excel-office-365-quick-ways/).

![Home Tab](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Home-Tab-1.png)<figcaption id="caption-attachment-20831">Home Tab</figcaption>

- You can see the number formatting box in the number option.

![Number formatting box](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Number-formatting-box.png)<figcaption id="caption-attachment-20832">Number formatting box</figcaption>

- Just click the triangle after the **“Number Formatting”** box, it will expand the drop-down list as shown below.

![Drop down list](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Drop-down-list-2.png)<figcaption id="caption-attachment-20833">Dropdown list</figcaption>

- Here, you can select any of the formats as you wish. For example, we will select the **“Number”** option.

![Select Number format](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Select-Number-format.png)<figcaption id="caption-attachment-20834">Select Number format</figcaption>

- Finally, it will change the currency into number format.

![Result](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2021/01/Result-13.png)<figcaption id="caption-attachment-20835">Result</figcaption>

## A Bottom Line:

In this way, you have learned the simple steps to **remove the currency format in Excel**. Hope you like this article. Mention your **queries** in the below **comment** box. To learn more, check out **[Geek Excel](https://geekexcel.com/)**.

### Related Articles:

- **[Convert Currency (USD to EURO/USD to GBP) in Excel Office 365!!](https://geekexcel.com/convert-currency-usd-to-euro-usd-to-gbp-in-excel-office-365/)**
- **[Excel Shortcut: Apply Currency Format in MS Excel 365!!](https://geekexcel.com/simple-shortcut-to-apply-currency-format-in-ms-excel-365/)**
Data Structure: Stack and Queues
Tags: datascience, devjournal, webdev
Published: 2021-01-11 04:31:14

Ever wondered what Stacks and Queues mean? I've written a simple explanations and commonly used analogies to help briefly explain what they mean.

Stacks are linear data structures meaning elements can be inserted or deleted from only one side of the list. Stacks implement LIFO (last-in, first-out), meaning the last element that was added to the list is the first one that will be taken out. Think of PEZ candy, When you stack the candies in the little slot, the last one you inserted will be the first one you take out and eat.

The INSERT operation for a linear stack structure is PUSH and DELETE is POP. You may be familiar with these methods when dealing with arrays. Using query operations, you can see whether a stack is empty *STACK-EMPTY*, attempting to pop an empty stack will result in an underflows error.

Queues are similar to Stacks except they implement FIFO (first-in, first-out). INSERT operations on queues are called ENQUEUE and DELETE operation is called DEQUEUE. 

A common analogy used to depict an example of how queues work is restaurants. Think of a restaurant line, you want to help the customer that was there first not the one that arrived last. Queues have a head and a tail, when an element is enqueued, it takes place of the tail and the similar to the recently arrived customer. The dequeued takes place of the head element, as if you just helped that customer that's waited the longest.

I hope you've enjoyed my blog, please if you think i should add more let me know!

Have a wonderful day/night!
DigitalOcean Hackathon Submission
Tags: dohackathon
Published: 2021-01-11 04:21:30

## What I built
A personal website to showcase my work, skills, and blog. 

### Category Submission: 
Personal Site/Portfolio

### App Link
https://itsharshag.com

### Screenshots
![B2yZmoKMwH](https://dev-to-uploads.s3.amazonaws.com/i/9qgdih1zfm3l11u1xobt.png)
![chrome_OBf1hhAUNS](https://dev-to-uploads.s3.amazonaws.com/i/e16gihoxk7t3nfqlqmk7.png)  

### Description
I had an old personal website on WordPress. But now I am a Full Stack Web Developer and JavaScript enthusiast. So, I wanted to build a complete personal website for myself with my own hands so that I have flexibility and control over the complete website design. That's why I made this website with a cool new frontend framework that I absolutely love which is Svelte and with Node.js as the backend.


### Link to Source Code
https://github.com/HarshAgwl/personal-website

### Permissive License
MIT License

## Background
I had an old personal website on WordPress. But now I am a Full Stack Web Developer and JavaScript enthusiast. So, I wanted to build a complete personal website for myself with my own hands so that I have flexibility and control over the complete website design.

### How I built it 
I made this website with a cool new frontend framework that I absolutely love which is Svelte and with Node.js as the backend. 
DigitalOcean’s App Platform was super helpful in the whole process. It did take less than 15 minutes to upload my code to GitHub and then deploy it using the App Platform. I could see the website live so quickly. 
This reduces the time to setup build and deploy pipelines and saves so much time.
Setting up an AWS Route53 domain on Begin
Published: 2021-01-11 02:36:10

> **This article will give you a complete walk-through for setting up your Route53 domain on your Begin app. The entire process should take no longer than 10 minutes.**

You may use a free registrar-based DNS to host your domain on Begin such as Godaddy, Namecheap, One.com, etc., but Route53 is the preferred registrar and DNS management system for Begin users because:

- It's integrated with Amazon's other cloud services.
- Your DNS will resolve from 15+ locations worldwide, making your website faster for your end-users.
- Route53 is a DNS management system (Smart DNS) compared to all the others, which are merely domain registrars with a limited feature set for manipulating DNS.

Begin allows you to add your domain to your Begin app through a simple process called [domain mapping (also sometimes called host mapping).](https://docs.begin.com/en/getting-started/domains) First, we will learn how to set up our domain and DNS in Route53, and then we will finish by mapping our domain to Begin. Without further ado!

## Step 1: Sign up for AWS

Don't be discouraged by this section, as it may seem overly tedious to create an account. This section is important and will open up the powers and services of AWS in a safe manner.

Create an AWS account if you don't already have one. After you create your AWS account, you must take a few prerequisite actions to set up your account for everyday tasks properly.

When you first create an AWS account, you start with one identity with total access to all AWS services and resources in the account. This identity is called the AWS account root user.

"Amazon strongly recommends that you do not use the root user for your everyday tasks, even the administrative ones. Instead, adhere to the best practice of using the root user only to create your first IAM user. Then securely lock away the root user credentials and use them to perform only a few account and service management tasks." - AWS

> [Learn more about the AWS account root user and how to correctly set up your identity management.](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html)

## Step 2: Purchase/Transfer domain

Depending on your situation, you may be ready to purchase a brand new domain or transfer a domain from a different registrar. Buying a brand new domain is a quick and straightforward process while transferring in a domain will vary from each user's situation. I'll cover how to do both below.

## Purchase domain

To purchase a domain, navigate to the Route53 service in your AWS management console.

## Transfer Domain

## Step 3: Setup DNS

Setup 

## Step 4: Map domain to Begin

Setup
Heroku Commands: Installation and App Creation
Published: 2021-01-11 04:16:51

may need to update ruby 2.6.6 in gemfile, and run bundle
also change it in .ruby-version file
commit


   curl https://cli-assets.heroku.com/install.sh | sh
    
   heroku login 
       proceed to login in browser
   heroku apps:create
   heroku buildpacks:add heroku/ruby --index 1
   code Procfile
     inside Procfile: 
       web: bundle exec rails s
       release: bin/rake db:migrate

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/2nzgp1rs9fvnfijx75kh.jpg)


heroku buildpacks:add heroku/ruby --index 1 -a, --app [APPNAME]
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/yp6hsrflas3mattxh5ah.jpg)

git push heroku master:main


https://devcenter.heroku.com/articles/git#creating-a-heroku-remote
SWAYAM Online Education Portal
Tags: online, education, swayam, onlinepadhai
Published: 2021-01-11 04:05:49

---
title: SWAYAM Online Education Portal
published: true
description:Swayam Portal is an initiative of the central government to digitalize the education system and reach out to remote areas. Self portal free online courses across the country… 
tags: Online, Education, SWAYAM, Onlinepadhai
---
SWAYAM Portal - Self Portal is an online education portal prepared by the Ministry of Human Resource Development (MHRD) of the Government of India and All India Council for Technical Education (AICTE) with the help of Microsoft. .

The "Self" Online Education Portal was announced by the Government of India in the General Budget presented on 1 February 2017. Which was launched by the then President Honorable Pranab Mukherjee on 9 July 2017.

There are many engineering and non-engineering courses running in it, if you want to enroll in it, then before January 18, enrollment will have to be taken, because almost all course benches will start from January 18.

Write by WBT: https://webbloggertips.com/
N-Queens backtraking
Tags: algorithms, java
Published: 2021-01-10 20:23:10

---
title: N-Queens backtraking
published: true
date: 2021-01-10 06:00:00 UTC
tags: algorithms,java,algorithms
canonical_url: https://jsedano.dev/algorithms/2021/01/10/n-queens-backtracking.html
---

This is the `N-Queens` problem solution with a `backtraking` approach, look here for the [N-Queens brute force approach](https://dev.to/jsedano/n-queens-brute-force-5b9n).

If you are not familiar with the `N-Queens` problem [look here for an explanation](https://dev.to/jsedano/n-queens-brute-force-5b9n).

You can find the complete code for this post here: [NQueensBacktracking.java](https://github.com/jsedano/examples/blob/main/java-snippets/NQueensBacktracking.java).

The main difference from this one and the brute force approach is that we will check if a current permutation is a viable solution every time we add a queen, and if it’s not we will not continue pursuing that particular permutation:

```
static void findSolutions(LinkedHashSetWrapper perm, int n){
    if(perm.size() == n) {
        System.out.println(perm);
        return;
    }
    for(int i = 0; i < n; i++){
        if(!perm.contains(i)) {
            perm.add(i);
            if(isSolution(perm.copyInnerArray())){
                findSolutions(perm, n);
            }
            perm.removeLastElement();
        }
    }
}
```

In the next image you can see a solution for N = 4 (clic to enlarge)

[![backtracking solution](https://jsedano.dev/assets/images/n-queens-backtracking/backtracking.png)](https://jsedano.dev/assets/images/n-queens-backtracking/backtracking.png)

Download the complete code from this post here [NQueensBacktracking.java](https://github.com/jsedano/examples/blob/main/java-snippets/NQueensBacktracking.java).
Gaudiamus CSS got smarter
Tags: css, design
Published: 2021-01-11 03:45:19

The idea of a framework builder might be exotic in the CSS world: usually we don't share SCSS functions & mixing like we do with code.

However, having a solid starting point to develop your custom CSS with seems logical. Frameworks like [ornate](https://www.npmjs.com/package/ornate_css) make use of [Gaudiamus'](https://github.com/gaudiamus-css/gaudiamus-css.github.io) builder.

## Utility class generator

Next to SCSS functions and mixing, almost all variables are exposed to the user to be changed & customized. This creates a setup that does not require anything else but a SASS compiler itself. This is an argument especially for those who suffered under the configuration of solutions like [tailwind](https://tailwindcss.com/). 

## What's the learning curve?

Gaudiamus will give you a decent experience out-of-the-box. Starting with manipulating the variables will make every start easy:

`npm i gaudiamus-css`

```scss
// In your index.scss

// Start by changing variables
$primaryColor: #16ca24;

@import "../node_modules/gaudiamus-css/scss

// Now all default utilities using the primary color are updated.

p{
   @extend .text-primary
}
```

```html
<p>hi</p>
```

Of course this is a rather primitive example, but changing the maps will soon reveal the customization power of the approach.

## Standard utilities and grid

Even if you don't have the need to roll your own framework, you will likely find the Grid-System and included utilities a useful start to your design. I especially cherish that the responsive grid is true CSS-grid, not flexbox based. This cleans up my HTML and generates better overview.

## Beyond

As of now, documentation centers around customization and composition. But dare to have a look at the mixins & functions within the package should you encounter you are comfortable with the system.
Why I decided to teach myself web development
Tags: womenintech, wecoded
Published: 2021-01-11 03:29:27

In the past three years, I found myself searching for something in relation to my work that was hard to grasp in the beginning, but became pretty clear in the spring of 2019: I wanted to be able to build whatever I wanted (especially after finding that a non-technical, female, solo founder had around 0% chances to raise money for a startup).

I’ve always been a very creative person and worked in localization at the time of my decision to teach myself coding. The fact that neither my passion for photography, illustration and design nor my creative linguistic work would ever turn into the career I hoped for only reassured me that this was ultimately the right choice for me. So I went to the library and got myself a book about HTML and CSS, while at the same time enrolling in freeCodeCamp. I was 100% sure that I’d fail miserably. I wasn’t clever enough, I was a failure in Math back in the days in school, and I was beyond intimated by all the smart programmers (mostly men) that seemed to comfortably tweet away about their coding achievements on a daily basis.

What kept me going despite being sure that I’d fail was, initially, the hope of having a seat at the table – most of the tools we use daily and that are a big part of our lives are made by men. I wondered: How would our world change if more women were involved in technical development?

And then, slowly but surely, mixed in with the frustration, came the joy of things making sense and working on a screen and even looking good. On the day I set up my portfolio page (not too long ago, actually!), I was 100% sure that this daunting adventure had turned into a passion of mine. And who was in charge of my successes and failures if not me?

There’s a lot to be said about Silicon Valley, but one of the best things that comes with living here is being immersed in a culture of learning and striving. I feel lucky to be surrounded by people that celebrate my interest in programming rather than telling me “You can’t do this anyway” (even though we have programmers like that as well, but this post doesn’t have space for them).

I still have incredibly much to learn before I’d even think about applying for a frontend developer role. Right now it almost seems like the most important first step was to unlearn some of my limiting beliefs.