у меня есть ненужные данные в некоторых из моих столбцов. Как от этого избавиться? - PullRequest
0 голосов
/ 04 мая 2020

, как вы можете видеть ниже в столбце age и пол , у меня есть некоторые данные, тогда как значение должно быть либо null, либо di git, почему ячейки sh с друг другом? как очистить мои столбцы?

И, как я понял, источником проблемы является столбец описания, там некоторые ячейки кажутся пустыми / или данные отображаются с незаполненными пробелами, тогда как у них есть данные, поэтому, когда я прочитайте файл, содержание описания показано в столбце возраста и пола

df = sqlContext.read.csv("/FileStore/tables/mtmedical_V6-16623.csv", header=True)
df.show(150)

output:

+--------------------+--------------------+--------------------+--------------------+-------------------------------------------------------+--------------------+--------------------+
|         description|   medical_specialty|                 age|              gender|sample_name (What has been done to patient = Treatment)|       transcription|            keywords|
+--------------------+--------------------+--------------------+--------------------+-------------------------------------------------------+--------------------+--------------------+
| A 23-year-old wh...| Allergy / Immuno...|                  23|              female|                                     Allergic Rhinitis |SUBJECTIVE:,  Thi...|allergy / immunol...|
| Consult for lapa...|          Bariatrics|                null|                male|                                    Laparoscopic Gas...|PAST MEDICAL HIST...|bariatrics, lapar...|
| Consult for lapa...|          Bariatrics|                  42|                male|                                    Laparoscopic Gas...|"HISTORY OF PRESE...| at his highest h...|
| 2-D M-Mode. Dopp...| Cardiovascular /...|                null|                null|                                    2-D Echocardiogr...|2-D M-MODE: , ,1....|cardiovascular / ...|
|  2-D Echocardiogram| Cardiovascular /...|                null|                male|                                    2-D Echocardiogr...|1.  The left vent...|cardiovascular / ...|
| Morbid obesity. ...|          Bariatrics|                  30|                male|                                    Laparoscopic Gas...|PREOPERATIVE DIAG...|bariatrics, gastr...|
| Liposuction of t...|                null|                null|                null|                                                   null|                null|                null|
|", Bariatrics,31,...|       1.  Deformity| right breast rec...|2.  Excess soft t...|                                    anterior abdomen...|3.  Lipodystrophy...|POSTOPERATIVE DIA...|
|  2-D Echocardiogram| Cardiovascular /...|                null|                male|                                    2-D Echocardiogr...|2-D ECHOCARDIOGRA...|cardiovascular / ...|
| Suction-assisted...|          Bariatrics|                null|                male|                                    Lipectomy - Abdo...|PREOPERATIVE DIAG...|bariatrics, lipod...|
| Echocardiogram a...| Cardiovascular /...|                null|                null|                                    2-D Echocardiogr...|DESCRIPTION:,1.  ...|cardiovascular / ...|
| Morbid obesity. ...|          Bariatrics|                  50|                male|                                    Laparoscopic Gas...|PREOPERATIVE DIAG...|bariatrics, morbi...|
| Normal left vent...| Cardiovascular /...|                null|                male|                                           2-D Doppler |2-D STUDY,1. Mild...|cardiovascular / ...|
| Cerebral Angiogr...|           Neurology|                  31|                male|                                      Moyamoya Disease |"CC:, Confusion a...| she was found ""...|

Так выглядит файл csv

1 Ответ

0 голосов
/ 04 мая 2020

Одной из альтернатив будет отображение карты данных и удаление «плохих строк». Однако это не будет очень масштабируемым процессом, если вы получаете несколько таких CSV-файлов.

Второй вариант - очистить сам файл csv. Мне кажется, файл содержит неправильные вкладки или пробелы, которые могут быть проблематичными c.

Наконец, вы можете попробовать следующее

val df = spark.read
.option("wholeFile", true)
.option("multiline",true)
.option("header", true)
.option("inferSchema", "true")
.csv("/FileStore/tables/mtmedical_V6-16623.csv")

Это избавит от текстового содержимого с несколькими новые строки, которые могут быть проблемой здесь.

...