mua*_*aiz 37 python dataframe pandas
我有一个来自AG列的数据文件,如下所示,但当我阅读它时,pd.read_csv('data.csv')
它会unnamed
在最后打印一个额外的列,无缘无故.
colA ColB colC colD colE colF colG Unnamed: 7
44 45 26 26 40 26 46 NaN
47 16 38 47 48 22 37 NaN
19 28 36 18 40 18 46 NaN
50 14 12 33 12 44 23 NaN
39 47 16 42 33 48 38 NaN
Run Code Online (Sandbox Code Playgroud)
我已经看过不同时间的数据文件,但我在其他任何列中都没有额外的数据.如何在阅读时删除这个额外的列?谢谢
Max*_*axU 87
df = df.loc[:, ~df.columns.str.contains('^Unnamed')]
In [162]: df
Out[162]:
colA ColB colC colD colE colF colG
0 44 45 26 26 40 26 46
1 47 16 38 47 48 22 37
2 19 28 36 18 40 18 46
3 50 14 12 33 12 44 23
4 39 47 16 42 33 48 38
Run Code Online (Sandbox Code Playgroud)
如果第一列有索引值,那么您可以这样做:
df = pd.read_csv('data.csv', index_col=0)
Run Code Online (Sandbox Code Playgroud)
小智 15
首先,按名称"未命名"找到列,然后删除这些列.
df.drop(df.columns[df.columns.str.contains('unnamed',case = False)],axis = 1, inplace = True)
Run Code Online (Sandbox Code Playgroud)
已批准的解决方案在我的情况下不起作用,因此我的解决方案如下:
''' The column name in the example case is "Unnamed: 7"
but it works with any other name ("Unnamed: 0" for example). '''
df.rename({"Unnamed: 7":"a"}, axis="columns", inplace=True)
# Then, drop the column as usual.
df.drop(["a"], axis=1, inplace=True)
Run Code Online (Sandbox Code Playgroud)
希望它可以帮助其他人。
该pandas.DataFrame.dropna
函数删除丢失的值(例如NaN
,NaT
)。
例如,以下代码将从数据框中删除该列的所有元素均缺失的所有列。
df.dropna(how='all', axis='columns')
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
58136 次 |
最近记录: |