
INFOWORLD . COM {
}
Detected CMS Systems:
- Wordpress (250 occurrences)
Title:
How to use .SD in the R data.table package | InfoWorld
Description:
See how to use data.table
Website Age:
33 years and 7 months (reg. 1991-11-13).
Matching Content Categories {π}
- Technology & Computing
- Mobile Technology & AI
- Telecommunications
Content Management System {π}
What CMS is infoworld.com built with?
Infoworld.com uses WORDPRESS.
Traffic Estimate {π}
What is the average monthly size of infoworld.com audience?
π Strong Traffic: 100k - 200k visitors per month
Based on our best estimate, this website will receive around 100,019 visitors per month in the current month.
However, some sources were not loaded, we suggest to reload the page to get complete results.
check SE Ranking
check Ahrefs
check Similarweb
check Ubersuggest
check Semrush
How Does Infoworld.com Make Money? {πΈ}
Display Ads {π―}
The website utilizes display ads within its content to generate revenue. Check the next section for further revenue estimates.
There's no clear indication of an external ad management service being utilized, ads are probably managed internally. Particular relationships are as follows:
Direct Advertisers (33)
google.com, appnexus.com, rubiconproject.com, liveintent.com, indexexchange.com, openx.com, triplelift.com, advertising.com, yahoo.com, outbrain.com, video.unrulymedia.com, rhythmone.com, sharethrough.com, interactiveoffers.com, lijit.com, districtm.io, onetag.com, gumgum.com, sovrn.com, teads.tv, media.net, emxdgt.com, criteo.com, adyoulike.com, themediagrid.com, nobid.io, nativo.com, inmobi.com, durationmedia.net, amxrtb.com, aps.amazon.com, aax.media, mediafuse.comReseller Advertisers (39)
google.com, appnexus.com, rubiconproject.com, indexexchange.com, openx.com, pubmatic.com, triplelift.com, freewheel.tv, advertising.com, yahoo.com, video.unrulymedia.com, smartadserver.com, spotxchange.com, rhythmone.com, sharethrough.com, lkqd.net, spotx.tv, districtm.io, contextweb.com, onetag.com, gumgum.com, teads.tv, media.net, emxdgt.com, xandr.com, 33across.com, sonobi.com, minutemedia.com, synacor.com, imds.tv, 152media.info, springserve.com, vhbx.co, vindicosuite.com, tremorhub.com, vidazoo.com, beachfront.com, vibrantmedia.com, improvedigital.comHow Much Does Infoworld.com Make? {π°}
Display Ads {π―}
$840 per month
Our analysis indicates Infoworld.com generates between $631 and $1,473 monthly online from display ads.
Wordpress Themes and Plugins {π¨}
What WordPress theme does this site use?
- Idg B2b Base Theme
- Iw B2b Child Theme
What WordPress plugins does this website use?
Keywords {π}
data, datatable, group, mins, sharon, jul, user, machlis, code, usertype, column, matt, mydt, type, cloud, development, month, print, rows, argument, mydtyear, sdwhichmaxtrips, video, python, videos, analytics, package, writer, software, symbol, trips, csv, file, table, year, printsd, line, add, grouping, analysis, management, linkedin, privacy, spotlight, aiready, centers, newsletters, resources, contributing, howto,
Topics {βοΈ}
ai-ready data centers language software development java wrapper classes bicycle-share system single-trip customer parent company foundry video tutorials won python env manager put curly braces palo alto networks generative ai user type names sharon machlis unquoted column names daily cycling trips data table grouped public cloud customer user group ll load data csv file month starting date table packageβ article longtime writer ai agents data secure idg results οΏ½ youtube playlist mass communications instructional content subscriber user group matt told rights reserved topics spotlight user type matt suggested matt showed table package ai data table data set table users table syntax table symbol perform calculations symbol representing β boston area follow download separate times bracket notation
Questions {β}
- What if you want to see maximums for each month and user type?
Schema {πΊοΈ}
BreadcrumbList:
context:https://schema.org
itemListElement:
type:ListItem
position:1
name:Home
item:https://www.infoworld.com/
type:ListItem
position:2
name:Analytics
item:https://www.infoworld.com/analytics/
type:ListItem
position:3
name:How to use .SD in the R data.table package
item:
ListItem:
position:1
name:Home
item:https://www.infoworld.com/
position:2
name:Analytics
item:https://www.infoworld.com/analytics/
position:3
name:How to use .SD in the R data.table package
item:
Article:
context:https://schema.org
url:https://www.infoworld.com/article/2261952/how-to-use-sd-in-the-r-datatable-package.html
publisher:
type:Organization
name:InfoWorld
url:https://www.infoworld.com
logo:
type:ImageObject
author:
type:Person
name:Sharon Machlis
jobTitle:Contributing Writer
url:https://www.infoworld.com/profile/sharon-machlis/
name:How to use .SD in the R data.table package
headline:How to use .SD in the R data.table package
articleBody:For some data.table users, “dot-SD” is a bit of a mystery. But data.table creator Matt Dowle told me that it’s actually quite simple: Just think of it as a symbol representing “each group.” Let’s go through a couple of examples.
I have a data set of daily cycling trips from the Boston area’s bicycle-share system. If you’d like to follow along, you can download the CSV file from the link at the bottom of this article.
I’ll load data.table and import my CSV file using data.table’s fread() function. In the code below, I’m saving the data into a data table called mydt.
library(data.table)mydt <- fread("daily_cycling_trips_by_usertype.csv")
Next, I suggest printing the first six lines with head(mydt) to see what the data looks like. You’ll see that the data has columns for the date, the user type (subscriber or single-trip customer), number of trips, year, and month starting date to help with totals by month.
The first example Matt suggested: Print the first few rows of the data table grouped by user type. (We’re filtering for the first 12 rows just to make it easier to see the output). 
mydt[1:12, print(.SD), by = usertype]
print() iterated over each group and printed two separate times, one for each user type. The problem, though, is I don’t know which is the customer user group and which is the subscriber user group. The “by” column didn’t print out. Fortunately, Matt showed me a little trick for that.
If you’re familiar with mydt[i, j, by] data.table syntax, there are three parts to the bracket notation after the data table name: i, j, and by. i is for filtering rows, j is for what you want to do, and by is how you want to group your data.
For example: 
mydt[1:12, { print(.SD) }, by = usertype]
In the line of code above, I’ve just put curly braces around the j part. That’s going to let me add multiple R expressions inside the j argument. Now it’s still the same as before: no user type names.
But in this next line of code, look at the R statement I added (well, Matt told me to add): print(.BY).
mydt[1:12, { print(.BY); print(.SD) }, by = usertype]
.BY is a special data.table symbol that holds the value of by – what column or columns I’m grouping by.
If you run this code, you’ll have the name of each grouping variable along with the printout.
Sharon Machlis, IDG
Results of printing by group with data.table and .SD.
So that’s a very basic example. I’m guessing you might want to do something a little more interesting with .SD than print, though. Next let’s look at summarizing the data by group, calculating which day had the most trips each month this year.
This line of code has it all:
mydt[Year == "2019", .SD[which.max(Trips)], by = MonthStarting]
The i first argument in the brackets filters for any rows where the year is 2019. The j argument is the interesting part for .SD. Think of .SD as referring to each group of your data. Or as Matt said, “You do j by by. Like a for loop.”
What if you want to see maximums for each month and user type? Just add another column to the by (third) argument:
mydt[Year == "2019", .SD[which.max(Trips)], by = .(MonthStarting, usertype)]
There are several ways to express grouping by more than one column in data.table. One way is with the dot before the unquoted column names, as above. Another is to use list instead of the dot, for example: 
mydt[Year == "2019", .SD[which.max(Trips)], by = list(MonthStarting, usertype)]
You can also use a conventional base R vector with quotation marks around each column name. 
mydt[Year == "2019", .SD[which.max(Trips)], by = c("MonthStarting", "usertype")]
For more R tips, head to the “Do More With R” YouTube playlist.
download
Sample Bicycle Trip Data
CSV file to accompany my “How to use .SD in the R data.table package” article and video Sharon Machlis
Hope to see you next episode!
wordCount:748
image:
https://www.infoworld.com/wp-content/uploads/2025/02/2261952-0-18883100-1738971169-do_more_with_r_teaser-100758232-orig.jpg?quality=50&strip=all
datePublished:2019-07-18T10:00:00-04:00
dateModified:2025-02-07T18:32:37-05:00
keywords:R Language,Analytics,Software Development
mainEntityOfPage:https://www.infoworld.com/article/2261952/how-to-use-sd-in-the-r-datatable-package.html
Organization:
name:InfoWorld
url:https://www.infoworld.com
logo:
type:ImageObject
ImageObject:
Person:
name:Sharon Machlis
jobTitle:Contributing Writer
url:https://www.infoworld.com/profile/sharon-machlis/
Social Networks {π}(6)
- https://www.youtube.com/playlist?list=PLYaGSokOr0MPz1tgwTW4JKcelhdJyUIrbhttps://www.youtube.com/playlist?list=PL7D2RMSmRO9JOvPC1gbA8Mc3azvSfm8Vv
- https://www.linkedin.com/in/sharonmachlis/
- https://www.facebook.com/InfoWorld
- https://twitter.com/infoworld
- https://www.youtube.com/@InfoWorld
- https://www.linkedin.com/company/164364
External Links {π}(19)
- How much does https://foundryco.com/our-brands/infoworld/ gross monthly?
- What are the total earnings of https://foundryco.com/work-here/?
- What's the financial outcome of https://foundryco.com/terms-of-service-agreement/?
- What are the earnings of https://foundryco.com/copyright-notice/?
- How much revenue does https://www.cio.com/ generate?
- Learn about the earnings of https://www.computerworld.com/
- What are the total earnings of https://www.csoonline.com/?
- What are the total earnings of https://www.networkworld.com/?
- How much profit does https://images.idgesg.net/images/article/2019/07/31_print_by_group-100801790-orig.jpg generate?
- Profit of https://images.idgesg.net/assets/2019/07/daily_cycling_trips_by_usertype.csv
- How much income does https://www.amazon.com/Practical-Mass-Communication-Journalism-Chapman/dp/1138726915 have?
- https://siia.net/neals/2023-neals-winners/ income
- How much does https://nextchapter.machlis.com/ gross monthly?
- What's the monthly income of https://bsky.app/profile/smachlis.bsky.social?
- What's the income generated by https://masto.machlis.com/@smach each month?
- How much profit is http://pubads.g.doubleclick.net/gampad/clk?id=6856108221&iu=/8456/IDG.G_B2B_InfoWorld.com making per month?
- How much revenue does http://pubads.g.doubleclick.net/gampad/clk?id=6858508033&iu=/8456/IDG.G_B2B_InfoWorld.com produce monthly?
- Get to know https://foundryco.com/'s earnings
- https://news.google.com/publications/CAAqIggKIhxDQkFTRHdvSkwyMHZNRFY1ZEhaNUVnSmxiaWdBUAE's revenue stream
Analytics and Tracking {π}
- Google Analytics
- Google Analytics 4
- Google Tag Manager
Libraries {π}
- Colorbox
- Firebase
- jQuery
- Video.js
Emails and Hosting {βοΈ}
Mail Servers:
- usb-smtp-inbound-1.mimecast.com
- usb-smtp-inbound-2.mimecast.com
Name Servers:
- ns-1222.awsdns-24.org
- ns-1555.awsdns-02.co.uk
- ns-67.awsdns-08.com
- ns-821.awsdns-38.net
CDN Services {π¦}
- Cloudflare
- Onthe
- Subscribers