6

In one column of my dataframe I have some empty cells. The data looks like this:

   yymmdd    lat   lon mag depth knmilocatie baglocatie   tijd
 19861226 52.992 6.548 2.8   1.0       Assen      Assen  74751
 19871214 52.928 6.552 2.5   1.5   Hooghalen            204951
 19891201 52.529 4.971 2.7   1.2   Purmerend    Kwadijk 200914
 19910215 52.771 6.914 2.2   3.0       Emmen      Emmen  21116
 19910425 52.952 6.575 2.6   3.0   Geelbroek    Ekehaar 102631
 19910808 52.965 6.573 2.7   3.0     Eleveld      Assen  40114

The desired result is:

   yymmdd    lat   lon mag depth knmilocatie baglocatie   tijd
 19861226 52.992 6.548 2.8   1.0       Assen      Assen  74751
 19871214 52.928 6.552 2.5   1.5   Hooghalen  Hooghalen 204951
 19891201 52.529 4.971 2.7   1.2   Purmerend    Kwadijk 200914
 19910215 52.771 6.914 2.2   3.0       Emmen      Emmen  21116
 19910425 52.952 6.575 2.6   3.0   Geelbroek    Ekehaar 102631
 19910808 52.965 6.573 2.7   3.0     Eleveld      Assen  40114

Inspired by this solution, I tried to replace the empty cells with:

df$baglocatie[df$baglocatie == ""] <- df$knmilocatie

However, this did not work as the empty cells were filled with the wrong values. Another possible solution also didn't work.

How do I solve this?

3 Answers 3

15

Try ifelse:

df$baglocatie <- ifelse(df$baglocatie == "", df$knmilocatie, df$baglocatie)
Sign up to request clarification or add additional context in comments.

Comments

5

You need to index also the replacing column:

df[ df$baglocatie == "", "baglocatie"  ]  <- df[ df$baglocatie == "", "knmilocatie" ]

1 Comment

Coming across this post after 8 years, I think this is the correct answer, not mine.
3

Or you can use a support vector:

empty <- df$baglocatie == ""
df$baglocatie[empty] <- df$knmilocatie[empty]

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.