# share-cc.R and cs. in wave 7
# share-dn.R cleaning 
gc()
rm(list=ls())
options(descr.plot = FALSE)
options(max.print=99999)closeAllConnections() 
##################################################################

setwd('c:/SHARE/R')

source('share-libraries.R')
source('share-functions.R')
source('share-function-country.R')

##################################################################
setwd('c:/SHARE/R/data')
	d 							<- fread(file = 'data-raw-cc.csv')
	
	unique(d, by="mergeid")
	d <- setorder(d, mergeid)
	head(d)

	f_cn(d,'')
	f_cn(d,'\\.x')
	f_cn(d,'\\.y')

	fwrite(d, file = 'data-cc-temp.csv', na=NA)
setwd('c:/SHARE/R')
# ##################################################################

setwd('c:/SHARE/R/data')
	d <- fread(file = 'data-cc-temp.csv')
setwd('c:/SHARE/R')

head(d)
f_cn(d,'')
f_cn(d,'\\.x')
f_cn(d,'\\.y')

# COUNTRY
d[, country := f_country(d, mergeid)]
table(d$country)
# d <- d[ country=='CZ' ]

######################################################
# CONDITIONS WHEN 10
######################################################
# CC002 ROOMS WHEN TEN YEARS OLD 
d[, age10_rooms					:= f_NA(d,  f_mv(d, '002_'),	-1, 30) ]
# f_id(d, 'age10')
 
# CC003 NUMBER OF PEOPLE LIVING IN HOUSEHOLD WHEN TEN 
d[, age10_hhs					:= f_NA(d,  f_mv(d, '003_'),	-1, 30) ]
# f_id(d, 'age10_')

# LOWROOM = RATIO ROOM/PEOPLE <= 0.5
d[, age10_rtp_x := age10_rooms/age10_hhs]
freq(d$age10_rtp_x)
f_d(d, 'age10_')
d[, age10_rtp_low := f_int_01(d, age10_rtp_x, 0.001, 0.5, 0, 96)]
h(d,,20,'mergeid|age10')

# CC004 WHO LIVED IN HOUSEHOLD WHEN TEN: BIOLOGICAL MOTHER/FATHER
# cs/cc004d1        Lived in hh when ten: biological mother
# cs/cc004d2        Lived in hh when ten: biological father
# cs/cc004d3        Lived in hh when ten: adoptive/step/foster mother
# cs/cc004d4        Lived in hh when ten: adoptive/step/foster father
# cs/cc004d5        Lived in hh when ten: biological sibling(s)
# cs/cc004d6        Lived in hh when ten: adoptive/step/foster/half sibling(s)
# cs/cc004d7        Lived in hh when ten: grandparent(s)
# cs/cc004d8        Lived in hh when ten: other relative(s)
# cs/cc004d9        Lived in hh when ten: other non-relative(s)

table(d$w3_cs004d1) #mother
table(d$w3_cs004d2) #mother
table(d$w7_cc004d1) #mother
table(d$w7_cc004d2) #mother

d[, age10_m 			:= f_01(d, f_mv(d, '004d1'),  "^selected") ]
d[, age10_f 			:= f_01(d, f_mv(d, '004d2'),  "^selected") ]
d[, age10_asf_m 	:= f_01(d, f_mv(d, '004d3'),  "^selected") ]
d[, age10_asf_f 	:= f_01(d, f_mv(d, '004d4'),  "^selected") ]
d[, age10_s 			:= f_01(d, f_mv(d, '004d5'),  "^selected") ]
d[, age10_asf_s 	:= f_01(d, f_mv(d, '004d6'),  "^selected") ]
d[, age10_gp 			:= f_01(d, f_mv(d, '004d7'),  "^selected") ]
d[, age10_or 			:= f_01(d, f_mv(d, '004d8'),  "^selected") ]
d[, age10_onr 		:= f_01(d, f_mv(d, '004d9'),  "^selected") ]
h(d,,38,'mergeid|age10')

d[, age10_mf       := f_sum_01(d, age10_m,age10_f)]
d[, age10_morf     := f_any_01(d, age10_m,age10_f)]
d[, age10_mandf    := f_all_01(d, age10_m,age10_f)]

d[, age10_asf_mf       := f_sum_01(d, age10_asf_m,age10_asf_f)]
d[, age10_asf_morf     := f_any_01(d, age10_asf_m,age10_asf_f)]
d[, age10_asf_mandf    := f_all_01(d, age10_asf_m,age10_asf_f)]

d[, age10_mfsgp     := f_any_01(d, age10_morf, f_any_01(d, age10_s, age10_gp)) ]
h(d,,38,'mergeid|age10_m')

d[, age10_mfs 			:= age10_mf/2]

###############################################################################
# ACCOMODATION FEATURES
###############################################################################
# CC007 FEATURES OF ACCOMODATION WHEN TEN # w3_cs007d1 ... 5 ... 96 nothing
table(d$w3_cs007d1) 
table(d$w3_cs007d5)
table(d$w3_cs007dno)
d[, temp_f1 		:= f_01(d,  f_mv(d, '007d1'), '^selected')]
d[, temp_f2 		:= f_01(d,  f_mv(d, '007d2'), '^selected')]
d[, temp_f3 		:= f_01(d,  f_mv(d, '007d3'), '^selected')]
d[, temp_f4 		:= f_01(d,  f_mv(d, '007d4'), '^selected')]
d[, temp_f5 		:= f_01(d,  f_mv(d, '007d5'), '^selected')]

d[, age10_feat 		:= f_rowsums_notNA(d, f_tsc(d, '^temp_f'))]
d[, age10_feat_no := f_01(d, age10_feat, 0, -1, 96)]
h(d,,38,'feat|temp_f|007d')

f_dt_NULL(d,'temp')  

# CC008 NUMBER OF BOOKS WHEN TEN: none or very few (1) or one shelf(2)
table(d$w3_cs008_)
table(d$w7_cc008_)
d[, age10_books_few := f_01(d, f_mv(d, '008_'), 'shelf|few')]
d[, age10_books_no 	:= f_01(d, f_mv(d, '008_'), 'none')]
d[, age10_books_more	:= f_01(d, f_mv(d, '008_'), 'more')]

#$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
# WAVE 3: CS009 OCCUPATION OF MAIN BREADWINNER WHEN TEN 
# Codes 1-4 white, 5-9 blue, army in blue
# | 1. Legislator, senior official or manager | 2. Professional 
#| 3. Technician or associate professional | 4. Clerk 
#| 5. Service, shop or market sales worker | 6. Skilled agricultural or fishery worker 
#| 7. Craft or related trades worker 8. Plant/machine operator or assembler 
#| 9. Elementary occupation | 10. Armed forces | 11. SPONTANEOUS ONLY: There was no main breadwinner 
# WAVE 7: CC000 OCCUPATION CODES MISSING

# wave 7
# cc009isco       int     %13.0g     notyetcoded ISCO code: Occupation of main breadwinner when ten

table(d$w3_cs009_)
table(d$w7_cc009isco)
d[, temp3 				:= f_text_collar(d, w3_cs009_,'white')]
d[, temp7 				:= f_isco_collar(d, w7_cc009isco,'white')]
d[, age10_jw 	:= f_waves(d, temp3, temp7)]
d[, temp3 				:= f_text_collar(d, w3_cs009_,'blue')]
d[, temp7 				:= f_isco_collar(d, w7_cc009isco,'blue')]
d[, age10_jb 		:= f_waves(d, temp3, temp7)]
d[, temp3 				:= f_text_collar(d, w3_cs009_,'army')]
d[, temp7 				:= f_isco_collar(d, w7_cc009isco,'army')]
d[, age10_ja 		:= f_waves(d, temp3, temp7)]
h(d,,38,'age10_ja|age10_jb|age10_jw')
f_dt_NULL(d,'temp')  


################################################################################
# CC010 RELATIVE POSITION TO OTHERS MATHEMATICALLY WHEN TEN 
# CC010a RELATIVE POSITION TO OTHERS LANGUAGE WHEN TEN
table(d$w3_cs010_)
table(d$w7_cc010_) # 1. and 2.
d[, age10_math_good	:= f_01(d, f_mv(d, '010_'), 'better')]
d[, age10_lang_good	:= f_01(d, f_mv(d, '010a_'), 'better')]

################################################################################
# WAVE 7 ONLY 
################################################################################
# cc720d8         byte    %12.0g     dummi      SPONTANEOUS ONLY: didn't live with mother or had no female caregiver
# cc720d9         byte    %12.0g     dummi      SPONTANEOUS ONLY: didn't live with father or had no male caregiver
table(d$w7_cc720d8)
table(d$w7_cc720d9)
d[, age10_m_no := f_01(d, w7_cc720d8,'^selected')] 
d[, age10_f_no := f_01(d, w7_cc720d9,'^selected')] 

# cc721_1         byte    %16.0g     cc721_1    PARENT UNDERSTAND mother: 1.alot, 2.some, 3.little, 4.notatall
freq(d$w7_cc721_1)
freq(d$w7_cc721_2)
d[, age10_m_und_lot := f_01(d,  w7_cc721_1, 	'A lot')]
d[, age10_m_und_lit := f_01(d,  w7_cc721_1,  'A little')]
d[, age10_m_und_not := f_01(d,  w7_cc721_1,  'not at all')]
d[, age10_m_und_lno := f_01(d,  w7_cc721_1,  'A little|not at all')]
d[, age10_f_und_lot := f_01(d,  w7_cc721_2, 	'A lot')]
d[, age10_f_und_lit := f_01(d,  w7_cc721_2,  'A little')]
d[, age10_f_und_not := f_01(d,  w7_cc721_2,  'not at all')]
d[, age10_f_und_lno := f_01(d,  w7_cc721_2,  'A little|not at all')]

# cc722_1         byte    %13.0g     cc722_1    PARENT RELATIONSHIP mother: 1. exc, 2.verygood, 3.good, 4.fair, 5.poor 
freq(d$w7_cc722_1)
d[, age10_m_rel_exc := f_01(d,  w7_cc722_1, 'excellent')]
d[, age10_m_rel_bad := f_01(d,  w7_cc722_1, 'fair|poor')]
d[, age10_f_rel_exc := f_01(d,  w7_cc722_2, 'excellent')]
d[, age10_f_rel_bad := f_01(d,  w7_cc722_2, 'fair|poor')]

# cc724_          byte    %8.0g      cc724_     INTRO EXPERIENCES BEFORE AGE 17 no data 
# cc725_1         byte    %9.0g      cc725_1    PARENT PHYSICAL HARM mother
freq(d$w7_cc725_1)
d[, age10_m_harm_no 	:= f_01(d,  w7_cc725_1, 'Never')]
d[, age10_m_harm_yes 	:= f_01(d,  w7_cc725_1, 'Sometimes|Often')]
d[, age10_m_harm_oft 	:= f_01(d,  w7_cc725_1, 'Often')]
d[, age10_f_harm_no 	:= f_01(d,  w7_cc725_2, 'Never')]
d[, age10_f_harm_yes 	:= f_01(d,  w7_cc725_2, 'Sometimes|Often')]
d[, age10_f_harm_oft 	:= f_01(d,  w7_cc725_2, 'Often')]

# cc727_          byte    %9.0g      cc727_     ANYBODY ELSE PHYSICAL HARM
d[, age10_oth_harm_no 	:= f_01(d,  w7_cc727_, 'Never')]
d[, age10_oth_harm_yes 	:= f_01(d,  w7_cc727_, 'Sometimes|Often')]
d[, age10_oth_harm_oft 	:= f_01(d,  w7_cc727_, 'Often')]

# IMPORTANCE RELIGION  tab cc728_ very_impt=1, somewhat=2, not_very=3, not_at_all=4
table(d$w7_cc728_)
d[, age10_faith_impt 		:= f_01(d, w7_cc728_, '^very important')]
d[, age10_faith_no 			:= f_01(d, w7_cc728_, 'not at all')]

# cc729_          byte    %9.0g      cc729_     LONELY FOR FRIENDS age 6-16
table(d$w7_cc729_)
d[, age10_fr_no := f_01(d, w7_cc729_, 'often|sometimes')]

# cc730_          byte    %9.0g      cc730_     GROUP OF FRIENDS COMFORTABLE age 6-16
freq(d$w7_cc730_)
d[, age10_fr_noconf := f_01(d, w7_cc730_, 'never|rarely')]

# POOR   tab cc733_  well_off=1, avg=2, poor=3, varied=4  before age 16
freq(d$w7_cc733_)
d[, age10_poor := f_01(d, w7_cc733_, 'poor')]
d[, age10_rich := f_01(d, w7_cc733_, 'well')]

# cc734_          byte    %8.0g      cc734_     MOVE BECAUSE FINANCES before age 16
freq(d$w7_cc734_)
d[, age10_finm := f_01(d, w7_cc734_, 'yes')]

# cc735_          byte    %8.0g      cc735_     RECEIVED HELP RELATIVES before age 16
freq(d$w7_cc735_)
d[, age10_finh := f_01(d, w7_cc735_, 'yes')]

# cc736_          byte    %98.0g     cc736_     FATHER NO JOB before age 16: 1.yes, 2.no, 3.neverworked/dis, 5.neverlivedwithf
freq(d$w7_cc736_)
#d[, age10_f_nowork  	:= f_01(d, w7_cc736_, 'never worked|disabled|yes')]
d[, age10_f_nowork  	:= f_01(d, w7_cc736_, 'yes')]

# cc737_          byte    %8.0g      cc737_     PROBLEM LEARNING no data


#####################################################################
# SAVE
#####################################################################
f_cn(d, '') 
f_cn(d, 'age10') 
d <- d[, !grepl("^w1|^w2|^w3|^w4|^w5|^w6|^w7|temp", colnames(d)), with=FALSE]
d <- d[, grepl("mergeid$|age10", colnames(d)), with=FALSE]
d <- unique(d, by="mergeid")
d <- setorder(d, mergeid)
head(d)
colnames(d)

setwd('c:/SHARE/R/data')
	fwrite(d, file = "data-cc.csv", na=NA)
	d <- d[ grepl('CZ', mergeid) ,]
	fwrite(d, file = "data-cc-CZ.csv", na=NA)
setwd('c:/SHARE/R')
cat("Data saved", "\n")

