Citizenship Amendment Act (CAA/CAB) in Numbers

  1. It’s difficult for me to debate morality and ethics of the decision and therefore if according to you the decision is wrong in principle then the discussion can end here. I support you. But here I am not taking that route of reasoning, it’s the numbers.
  2. Excluding one particular religion made no logical sense even for a particular area — north east, I could see no reason why the law can’t accommodate people on case by case basis.
  3. What’s even weirder is that the protesters don’t seem to understand the impact. They seem to have clearly overestimated the potential of the act. From numbers below you will see that in reality India is not a hot destination for refugees anyways. We are not that great. Just FYI people looking to start a new life feel way more comfortable in countries which have similar culture and interests.
  4. Timing of this whole thing seems out of place. Well sort of. The number of refugees/immigrants in India have stayed pretty much the same in past 2 decades. Bringing in such controversial laws can only be attributed to political motivation.
  5. From North East’s perspective it’s just Bizarre. From what I understood they fear demographics changing because of influx of legal/illegal immigrants from surrounding countries. Not that it’s great, but in its current form the act excludes Muslims. That takes away major chunk of migrants from Bangladesh and Myanmar out of the picture. There are not many Hindus/Jains migrating anyways. Even if all Hindus from Bangladesh — 8 Million, migrated to India, That’s still around 6% of the population of West Bengal and Assam Combined. Also it’s not the Indian Government but international community that’s paying for most of expenses. What are people worried about ?
seekers <- read.csv(“./UNdata_Export_20191216_191045051.csv”)
seekers <- seekers %>% clean_names()
coi <- c(“Pakistan” , “Bangalesh” , “Afghanistan” , “Sri Lanka” , "China")
cols <- colnames(seekers)
cols[1] <- "residence"
cols[2] <- "origin"
cols[6] <- "total_refugee_like"
cols[7] <- "total_refugee_like_assisted_unhcr"
colnames(seekers) <- cols
kable(head(seekers)) %>%
kable_styling(bootstrap_options = c("striped", "hover"))
forindia <- seekers %>% filter(residence == "India")
forindia$maxcount <- apply(forindia %>% select(contains("refugee")) ,1, function(r) { max(r , na.rm=TRUE) })
yoyref <- forindia %>% group_by(residence ,year) %>% summarize(totals = sum(maxcount))ggplot(data = yoyref , aes(x=year , y = totals)) + geom_line(color = lightlinecol) + 
theme +
scale_y_continuous(labels = scales::comma)
ggplot(data = forindia , aes(x = year , y = maxcount, color=origin , label=origin)) + 
geom_line() +
theme(legend.position = "none") +
geom_dl(aes(label = origin), method = list(dl.trans(x = x - 1 ,y = y + 0.3), "last.points", cex = 0.8)) +
geom_dl(aes(label = origin), method = list(dl.trans(x = x - 0.2), "first.points", cex = 0.8)) + theme
  • We can see that it’s Srilanka , China, Myanmar and Afghanistan that pop out as the major contributors.
  • We see Sri Lankan refugees peaked around 1990s when the LTTE crisis hit and that’s when most of the influx happened.
  • Tibetan Refugees data looks to be starting from around the same time. I wonder if its just missing data or some important incident in there as well. Brief background — Wikipedia
  • For Bangladesh we note below that the numbers held constant at around 53K and then there is missing data after 2000.
  • It would have been interesting to see how Bangladesh’s Trend has been since 2000s because it’s at the core of the ongoing issue. But unfortunately the data is not available. This itself might be indicative of other problems that we are facing from Bangladesh. I try later in the article to get data from other source and some key points emerge for Bangladesh in particular.
coiseekers <- seekers %>% filter(origin %in% coi)
coiseekerstotals <- coiseekers %>% group_by(origin , residence) %>% summarise(totals = sum(maxcount)) %>%
coiseekerstotals <- coiseekerstotals %>% filter(totals > 200000)ggparallel::ggparallel(data = coiseekerstotals,
c("origin" , "residence") ,
weight="totals" , label.size = 8, text.angle=0 , text.offset = 0 ,label=TRUE) +

scale_color_manual(values=sample(color , 34) )+
theme + theme(legend.position="none")

North East Story and Role of Bangladesh

Now before we even go there. This is an amazing read by Elena Dabova.

  1. One of the reasons for such situation is that the social, economic and other troubles of Muslim population in India are not a result of the oppressive politics of the Indian state. Vast inequalities between the elites and the most of the populations were present in precolonial Indian feudalism, deepened during British rule, and remained the same all along before and after the creation of the independent Indian state in 1948
  2. One of the goals of terrorist actions is promotion of separatism through twisted demographic and immigration politics. For example, by 1993, at least 15 million Bangladeshi Muslims migrated to India illegally, outnumbering Hindu refugees by 3:1. They moved mainly to Assam, West Bengal, Bihar, Tripura and other North East India states.
  3. The infiltration [of illegal immigrants] has invalidated the communal logic of the Muslim league which led to the creation of Pakistan and the Pakistan’s thesis that Muslims could only protect themselves and fourish by being separated from Hindus in their own pure land.
  4. Most politicians though believe that the Bangladeshi Muslims are entering India not voluntarily (Manchanda, 2010;Rai, 1993). Instead they are pushed out by poverty and demographic suffocation in Bangladesh.
  5. The demographic threat to India from international immigration per se is overblown. The proportion of immigrant population to nonimmigrant population in India is about the same or even smaller compared to other countries, especially compared to the United States in the 20th century.
visa <- read.csv("./VISA_Details_2010-2013-oct.csv")
visa <- visa %>% clean_names()
visa <- visa %>% gather(key="type" , value="counts" ,-country , -mission , -visa_issue_date)
visa$visa_issue_date_d <- visa$visa_issue_date %>% strptime(format="%d-%m-%y") %>% as.Date()
visa$visa_issue_date_year <- visa$visa_issue_date_d %>% format("%Y")
visa$visa_issue_date_month <- visa$visa_issue_date_d %>% format("%m")
ggplot(data= visa %>% group_by(country ,type) %>% summarise(totals = sum(counts))
, aes(x = country %>% reorder(totals) , y = totals, fill = type)) +
geom_bar(stat="identity") +
theme +
theme(axis.text.y = element_text(angle=0), legend.position="top" )
tourists <- read.csv("./InternationToursits2001_2010.csv")
tourists <- tourists %>% clean_names()
touristsperyear <- tourists %>% gather(key="year" , value="numberoftourists"  , -name_of_countries)
touristsperyear$year <- touristsperyear$year %>% str_remove("x") %>% strptime(format="%Y") %>% as.Date()
ggplot(data= touristsperyear
, aes(x = year , y= numberoftourists, color=name_of_countries)) +
geom_line() +
geom_dl(aes(label = name_of_countries), method = list(dl.trans(x = x - 1 ,y = y + 0.3), "last.points", cex = 0.8)) +
geom_dl(aes(label = name_of_countries), method = list(dl.trans(x = x - 0.2), "first.points", cex = 0.8)) + theme



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Abhijeet Pokhriyal

Abhijeet Pokhriyal


School of Data Science @ University of North Carolina — Charlotte