/* */ .search { float: right; margin-top: -10px; position: relative; display: none; } /* Pop up fancy box for mute and ban */ #popUp { width: 400px; height: 300px; margin-top:4px; } #popUp #header { width: 100%; height: 75px; border-bottom: 1px solid #ccc; background: #ffffff; /* Old browsers */ background: -moz-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f9f9f9)); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* IE10+ */ background: linear-gradient(to bottom, #ffffff 0%,#f9f9f9 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f9f9f9',GradientType=0 ); /* IE6-9 */ } #popUp #header span { font-size: 20px; margin: 28px 30px; color: #3E90B9; text-shadow: 0 1px 4px rgba(255, 255, 255, 0.7); display: inline-block; line-height: 1em; } #popUp #body { margin: 30px; margin-top:25px; font-size: 12px; } #popUp #okay-button { margin-top: 30px; background: -webkit-linear-gradient(top, #f6fdff 0%,#b8dcea 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, #f6fdff 0%,#b8dcea 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, #f6fdff 0%,#b8dcea 100%); /* IE10+ */ background: -moz-linear-gradient(center top , #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: -webkit-linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6fdff', endColorstr='#b8dcea'); outline: 0; border: 1px solid #85c2e0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; color: #4990b4; cursor: pointer; display: inline-block; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: bold; line-height: 15px; padding: 5px 15px; position: relative; text-align: center; text-shadow: 0 1px 3px rgba(255, 255, 255, 0.6); -webkit-box-shadow: 0px 1px 4px #eaeaea; -moz-box-shadow: 0px 1px 4px #eaeaea; box-shadow: 0px 1px 4px #eaeaea; vertical-align: center; text-decoration: none; } #verificationDialog { margin: 0; padding: 0; } #validate-header { width: 100%; height: 70px; border-bottom: 1px solid #E5E5E5; background-color: #F8F8F8; border-radius: 7px 7px 0 0; } #validate-header h1 { display: inline-block; line-height: 1em; font-family: Helvetica; margin: 0; padding: 26px 25px; color: #5EA1C3; font-size: 23px; font-weight: normal; text-shadow: 0px 2px 2px #DDD; } #validate-body { padding: 15px 25px; color: #333; } #validate-body span { display: block; font-family: Arial; font-size: 12px; color: #555; padding-bottom: 15px; } .resend { color: #777; font-family: Arial; font-size: 13px; } .resend:hover { color: #3E90B9; } #joinCommunityDialog { width: 650px; height: 445px; } #header { width: 100%; height: 75px; border-bottom: 1px solid #ccc; border-radius: 7px 7px 0 0; background: #ffffff; /* Old browsers */ background: -moz-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f9f9f9)); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(top, #ffffff 0%,#f9f9f9 100%); /* IE10+ */ background: linear-gradient(to bottom, #ffffff 0%,#f9f9f9 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f9f9f9',GradientType=0 ); /* IE6-9 */ } #header span { font-size: 23px; font-family: Helvetica; margin: 28px 29px; color: #5EA1C3; text-shadow: 0 2px 2px #DDD; display: inline-block; line-height: 1em; } #agreement ol li { font-size: 12px; display: inline-block; padding-right: 5px; color: #73bbdd; min-width: 125px; } .tou-tabs { display: flex; margin: 15px 0px 4px 30px; } .tou-tabs li { margin-right: 10px } ol li span { color: #7c7c7c; font-size: 13px; font-family: Arial; } label { color: #666666; } .tab-text { position: absolute; margin-top: 11px; } .tab-num-box { color: #7c7c7c; background-color: #e2e2e2; width: 41px; height: 36px; text-align: center; margin-right: 8px; display:block; float:left; } .tab-num-text { padding: 0px; margin-left: 15px; margin-top: 11px; font-family: 'Museo500'; font-size: 19px; display:block; float:left; } .finished { border: 1px solid #d7edf5; margin-bottom: -1px; background-color: #f8f8f8; } .finished .tab-num-box { color: white; font-family: 'Museo300'; background-color: #c5e3f2; } .finished .tab-num-text { color: #5A9ABA; } .finished .tab-text { font-family: 'Arial'; font-weight: bold; color: #c4e2f2; font-size: 13px; } .active .tab-num-box { background-color: #73bbdd; width: 41px; height: 41px; box-shadow: 0px 0px 5px (0, 0, 0 0.35); } .active .tab-num-text { color: white; margin-top: 13px; margin-left: 16px; } .active .tab-text { font-family: Arial; font-weight: bold; color: #5A9ABA; margin-top: 13px; } .wolframIdTab { width: 275px; } .wolframIdTab .tab-text { padding: 0px; } .acceptTouTab { border: 1px solid #b7dbed; border-bottom: none; opacity: 1; background-color: #f7fdff; width: 291px; height: 41px; margin-bottom: -5px; } .panel { background-color: #f7fdff; border: 1px solid #b7dbed; margin: 0px 30px; } .panel .label { display: block; font-family: Arial; font-size: 12px; color: #555; margin: 5px 15px; } .sub-panel { border-top: 1px solid #B7DBED; background: #fff; padding: 20px; padding-left: 25px; } .sub-panel a { padding: 0px 15px; text-decoration: none; font-size: 12px; color: #3187a7; } .sub-panel a:hover { color: #0a6089; } input[type="submit"] { background: -moz-linear-gradient(center top , #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: -webkit-linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6fdff', endColorstr='#b8dcea'); outline: 0; border: 1px solid #85c2e0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; color: #4990b4; cursor: pointer; display: inline-block; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: bold; line-height: 15px; padding: 5px 15px; position: relative; text-align: center; text-shadow: 0 1px 3px rgba(255, 255, 255, 0.6); -webkit-box-shadow: 0px 1px 4px #eaeaea; -moz-box-shadow: 0px 1px 4px #eaeaea; box-shadow: 0px 1px 4px #eaeaea; vertical-align: center; text-decoration: none; } input[type="submit"]:hover { background: -moz-linear-gradient(center top , #f6fdff, #90cae1) repeat scroll 0 0 transparent; background: linear-gradient(top, #f6fdff, #90cae1) repeat scroll 0 0 transparent; background: -webkit-linear-gradient(top, #f6fdff, #90cae1) repeat scroll 0 0 transparent; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6fdff', endColorstr='#90cae1'); border: 1px solid #85c2e0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; color: #3e90b9; cursor: pointer; display: inline-block; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: bold; line-height: 15px; padding: 5px 15px; position: relative; text-align: center; text-shadow: 0 1px 4px rgba(255, 255, 255, 0.7); vertical-align: center; text-decoration: none; } .cancel-button { background: -moz-linear-gradient(center top , #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; background: -webkit-linear-gradient(top, #f6fdff, #b8dcea) repeat scroll 0 0 transparent; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6fdff', endColorstr='#b8dcea'); outline: 0; border: 1px solid #85c2e0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; color: #4990b4; cursor: pointer; display: inline-block; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: bold; line-height: 15px; padding: 5px 15px; position: relative; text-align: center; text-shadow: 0 1px 3px rgba(255, 255, 255, 0.6); -webkit-box-shadow: 0px 1px 4px #eaeaea; -moz-box-shadow: 0px 1px 4px #eaeaea; box-shadow: 0px 1px 4px #eaeaea; vertical-align: center; text-decoration: none; } .cancel-button:hover { background: -moz-linear-gradient(center top , #f6fdff, #90cae1) repeat scroll 0 0 transparent; background: linear-gradient(top, #f6fdff, #90cae1) repeat scroll 0 0 transparent; background: -webkit-linear-gradient(top, #f6fdff, #90cae1) repeat scroll 0 0 transparent; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6fdff', endColorstr='#90cae1'); border: 1px solid #85c2e0; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; color: #3e90b9; cursor: pointer; display: inline-block; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: bold; line-height: 15px; padding: 5px 15px; position: relative; text-align: center; text-shadow: 0 1px 4px rgba(255, 255, 255, 0.7); vertical-align: center; text-decoration: none; } #join-text { padding: 25px; color: #555; font-size: 13px; font-family: 'Arial'; height: 160px; line-height: 18px; color: #777; } #join-text a { text-decoration: none; color: #3187a7; } #join-text a:hover { text-decoration: none; color: #0a6089; } #join-text span { display: block; padding-bottom: 15px; } #confirm-cancel-text { padding: 25px; color: #777; font-size: 13px; line-height: 18px; font-family: 'Arial'; height: 160px; } #confirm-cancel-text h1 { font-family: Museo500; font-size: 17px; color: #146F9D; margin: 0px; font-weight: normal; } #confirm-cancel-text span { display: block; padding-bottom: 5px; } #cancel-reg { cursor: pointer; }

Group Abstract Group Abstract

Message Boards Message Boards

Answer (Unmark) Mark as an Answer
.root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 10px; } WOLFRAM COMMUNITY 2 | 3.4K Views | 4 Replies | 5 Total Likes View groups... Follow this post Share Share this post: GROUPS: Social Science Wolfram Language Jobs & More Exchange Computational Humanities

Help needed --- Every Japanese to be called SATO by 2531"

Marco Barsotti Marco Barsotti Marco Barsotti, Atlantico Quotidiano. EDJ School of Jounralism Posted 1 year ago .root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 0; }

Hello!

I'm a teacher of journalism at the international EDJ school in Nice FR

My students have access to Mathematica 14 (but they mainly use chat-driven notebooks as the wolfram language is sort of complicated to them).

Anyway. As part of the "Data Journalism" course I want to give them the assignment to read this article https://www.dailymail.co.uk/news/article-13266707/Everyone-Japan-called-Sato-year-2531-countrys-marriage-laws.html

It tells the story of a Tohoku University economics professor that concluded that, given how married couples in jpn drop one of their family names in favour of both individuals taking the same one everyone will be called "SATO" by 2531.

I'd like the students to perform the same simulation for their own country (after finding out the candidate family name -- for Italy that would probably be "Rossi")

Now, after some digging I've found in this PDF https://think-name.jp/assets/pdf/Sato_estimation_yoshida_hiroshi.pdf

the method used to perform the calculation for Japan:

Handling of Past Data

First, we obtained the number of people with the Sato surname in Japan from the data provided and published by "Myoji-yurai.net" (https://myoji-yurai.net/), which covers more than 99.04% of Japanese surnames.

Next, we divided the number of people with the Sato surname by the total population of Japan for each year (estimated by the Ministry of Internal Affairs and Communications) * 99.04% to obtain the "ratio of the Sato surname in a given year t": x(t).

From the change in the Sato surname between the latest years of 2022 and 2023, we calculated the one-year growth rate [Rho] in the Sato surname ratio. Estimation Results (1) Growth Rate [Rho] of the Sato Surname It is found that the ratio of the Sato surname x(t) increased from 1.480% in 2013 to 1.530% in 2023, an increase of 0.05 percentage points over more than 10 years. Calculating from the data for the most recent points of 2022 and 2023, the growth rate [Rho] of the Sato surname ratio is (1+[Rho]) = 1.0083.

(2) Future Simulation Assuming that the ratio of the Sato surname to the Japanese population will grow at a rate of 1.0083 each year, starting from 1.530% as of March 2023, and repeating the calculation of x(t+1) = (1+[Rho]) x(t), it was calculated that the ratio will reach 100% in approximately 500 years, in 2531.


And the question is : Is anyone kind enough to write me the Wolfram Language generic code to perform the same ? Ideally, students could get their own country basic data (if possible directly with WolfrmaLanguage functions, if not possible from outside sources) and have the system perform the simulation for them (of course, forcing the Japanese role "select one family name" even if not the case for the specific country)

It is also possible that it will not converge and we will never have a "Rossi only" country not even in year 3500...or maybe yes. But that's also the point of the simulation.

Thanks!!

POSTED BY: Marco Barsotti 4 Replies Sort By: .root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 0; } 1 Akishi Kato Akishi Kato Akishi Kato, University of Tokyo Posted 10 months ago

Very cool answer! I can add nothing more.

I ran the code, slightly modified such that the upper limit 30 of $n$ is replaced by 1000. I put some sample outputs here. The last one is prophesied future of Japan !? enter image description here enter image description here enter image description here

POSTED BY: Akishi Kato .root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 0; } 2 Gianluca Gorni Gianluca Gorni Gianluca Gorni, University of Udine Posted 10 months ago

Just out of curiosity, I wrote a stochastic simulation. I start with a few surnames, give them a random frequency, and build a starting population with those surnames with the given frequencies. The new generation is generated this way: first I make a random permutation of the previous population, then I take half of the remixed population, and finally I redouble this half: this simulates married couples that homogenize their surnames:

Clear[initialFrequencies, startingPopulation, population];
surnames = {"Sato", "Suzuki", "Takahashi",
   "Tanaka", "Watanabe", "Ito"};
initialFrequencies = 
  1000*(Join[{0, 1}, RandomReal[{0, 1}, Length[surnames] - 1]] //
         Sort // Differences) // Sort // Reverse // Round;
startingPopulation = 
  Thread[Inactive[ConstantArray][surnames, initialFrequencies]] //
    Activate // Flatten;
population[0] = startingPopulation;
population[n_] := 
  population[n] = Module[{randomHalfPopulation}, randomHalfPopulation =
     RandomSample[population[n - 1]][[1 ;; -1 ;; 2]]; 
    Join[randomHalfPopulation, randomHalfPopulation]];
ListLinePlot[
 Transpose[
  surnames /. Table[Association @@ (Rule @@@ Tally[population[n]]),
    {n, 0, 30}]],
 PlotLegends -> surnames]

Running the simulation a few times does not show a clear pattern. Sometimes Sato increases, sometimes it decreases. The least frequent surnames are at risk of extinction.

POSTED BY: Gianluca Gorni .root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 0; } 0 Marco Barsotti Marco Barsotti Marco Barsotti, Atlantico Quotidiano. EDJ School of Jounralism Posted 10 months ago

hello!

thank you for your kind answer. I suspected that too.

A running wolfram language code to simulate the evolution would be great in fact.

thanks again

POSTED BY: Marco Barsotti .root-post .like-component { align-items: center; } .root-post .like-button { margin-left: 0; } 0 Akishi Kato Akishi Kato Akishi Kato, University of Tokyo Posted 10 months ago

Hi. I am Japanese and my surname is Kato, which is ranked as 10th popular surname.

Perhaps I could help in coding, but the model you cited (geometric series, or, compound interest calculation) is too simplistic to be real. If most people had surname Sato, the percentage of Sato might still increase, but the rate of growth would inevitably slow down. The model totally ignores this fact and percentage will go up over 100%!

Mathematically speaking, such hegemony / supremacy / dominance phenomena are best described by Logistic differential equations. This equation correctly incorporate such slowing-down effect due to saturation.

I don't know why the author of the paper used such oversimplified model. My guess is that his real intention is not in the academic correctness, but to spark a debate on selective separate surnames for married couples, which is a hot political issues in Japan.

POSTED BY: Akishi Kato
Reply to this discussion in reply to Community posts can be styled and formatted using the Markdown syntax. Tag limit exceeded Note: Only the first five people you tag will receive an email notification; the other tagged names will appear as links to their profiles. Reply Preview Attachments Remove or Discard
Be respectful. Review our Community Guidelines to understand your role and responsibilities. Community Terms of Use Feedback © 2025 Wolfram