データフレームに列を追加し、ファイル名を列に挿入する方法はありますか?私は、ヘッダを削除することができたし、以下のコード使用してデータフレームに変換:DataFrame:データフレームに列を追加し、それぞれのファイル名をその列に挿入します。
を、私は以下のように2つのファイルがあります:
file1.csv:
name:file1
dept: hr
id,name,age
1,ss,34
2,rr,35
3,aa,44
file2.csv:
name:file2
dept: hr
id,name,age
1,ps,34
2,er,35
3,qa,44
val ofcFile = sc.wholeTextFiles("file:///root/ofc/dataset").flatMap(_._2.split("\n").drop(3))
case class ofc_str(id : String, name: String, age : String)
val DF = houseFile.map(_.split(",")).map(p => ofc_str(p(0).toString,p(1).toString,p(2).toString)).toDF()
DF.show
+--+----+---+
|id|name|age|
+--+----+---+
|1 | ss | 34|
|2 | rr | 35|
|3 | aa | 44|
|1 | ps | 34|
|2 | er | 35|
|3 | qa | 44|
をしかし、私はそこからレコードを識別することはできませんよfile私はそれを持って、どのように各レコードに対してファイル名を取得し、DFに新しい列のファイル名に挿入することができます。コメントで示唆したように
を達成するのはこれが可能である.............私を助けてください! – Tangle
flatMapでファイル名を削除しないでください。 – zero323
@ zero323ご返信ありがとうございます! ...私はファイルのファイル名を持っています...だから私はfile_name列にデータとしてデータフレームにその行を得ることができます.......代わりにどのように私はそれを達成することができます – Tangle