我试图找到类似的功能,就像在Python中一样,我可以删除连续具有 \xe2\x80\x98all\xe2\x80\x99 空值的行 -
\npython 中的代码 - 使用 Pandas 数据框 \xe2\x80\x98close_prices\xe2\x80\x99
\nclosed_prices.dropna(axis=0, how=\xe2\x80\x98all\xe2\x80\x99, inplace=True)\nRun Code Online (Sandbox Code Playgroud)\n基本上我想删除所有列都缺少值的行 - 我正在使用股票数据并希望删除周末和节假日,每列代表特定股票的收盘价。因此,如果特定行的所有列值均为空/缺失,我想删除该行。
\n我正在使用下面的代码 -
\nusing DataFrames\nusing DataFramesMeta\nusing CSV\nusing Dates\nusing Query\n\n\nfh_5 = CSV.read("D:\\\\Julia_Dataframe\\\\JuliaCon2020-DataFrames-Tutorial\\\\fh_5yrs.csv", DataFrame)\n\nmin_date = minimum(fh_5[:, "date"])\nmax_date = maximum(fh_5[:, "date"])\ndate_seq = string.(collect(Dates.Date(min_date) : Dates.Day(1) : Dates.Date(max_date)))\ndate_range = df = DataFrame(dates = date_seq)\ndate_range.dates = Date.(date_range.dates, "yyyy-mm-dd")\n\nfor s in unique(fh_5.symbol)\n df = fh_5[fh_5.symbol .== s, ["date","close"]]\n date_range = leftjoin(date_range, df, on =:"dates" => :"date")\n rename!(date_range, Dict(:close => s))\nend\nsize(date_range, 1)\nsize(filter(x -> any(!ismissing, x), date_range), 1)\nsize(date_range, 1)\nRun Code Online (Sandbox Code Playgroud)\n
我假设您正在使用 DataFrames.jl。那么如果df是你的数据框就写:
filter(x -> any(!ismissing, x), df)\nRun Code Online (Sandbox Code Playgroud)\n或者filter!如果您想要就地操作。
例子:
\njulia> using DataFrames, Random\n\njulia> Random.seed!(1234);\n\njulia> df = DataFrame(rand([1, missing], 10, 2), :auto)\n10\xc3\x972 DataFrame\n Row \xe2\x94\x82 x1 x2\n \xe2\x94\x82 Int64? Int64?\n\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xbc\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\n 1 \xe2\x94\x82 1 1\n 2 \xe2\x94\x82 missing 1\n 3 \xe2\x94\x82 missing missing\n 4 \xe2\x94\x82 missing missing\n 5 \xe2\x94\x82 1 1\n 6 \xe2\x94\x82 1 missing\n 7 \xe2\x94\x82 missing missing\n 8 \xe2\x94\x82 1 missing\n 9 \xe2\x94\x82 1 1\n 10 \xe2\x94\x82 missing 1\n\njulia> filter(x -> any(!ismissing, x), df)\n7\xc3\x972 DataFrame\n Row \xe2\x94\x82 x1 x2\n \xe2\x94\x82 Int64? Int64?\n\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\xbc\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\n 1 \xe2\x94\x82 1 1\n 2 \xe2\x94\x82 missing 1\n 3 \xe2\x94\x82 1 1\n 4 \xe2\x94\x82 1 missing\n 5 \xe2\x94\x82 1 missing\n 6 \xe2\x94\x82 1 1\n 7 \xe2\x94\x82 missing 1\nRun Code Online (Sandbox Code Playgroud)\n