我有一个来自CSV文件的数据框:
import pandas as pd
filename = 'mike.csv'
main_df = pd.read_csv(filename)
我需要一个函数,它将从空格中删除所有字符串列(也有数字列)内容,然后返回这样的剥离数据帧。在下面的函数中,剥离似乎工作正常,但我不知道如何返回剥离的数据帧:
def strip_whitespace(dataframe):
dataframe_strings = dataframe.select_dtypes(['object'])
dataframe[dataframe_strings.columns] = dataframe_strings.apply(lambda x: x.str.strip())
return # how to return a stripped dataframe here?
完整代码:
import pandas as pd
filename = 'mike.csv'
main_df = pd.read_csv(filename)
def strip_whitespace(dataframe):
dataframe_strings = dataframe.select_dtypes(['object'])
dataframe[dataframe_strings.columns] = dataframe_strings.apply(lambda x: x.str.strip())
return stripped_dataframe # ?
stripped_main_df = strip_whitespace(main_df) # should be stripped df
答案 0 :(得分:2)
我认为read_csv
中需要参数skipinitialspace=True
:
main_df = pd.read_csv(filename, skipinitialspace=True)
然后不需要剥离色谱柱。
但如果需要使用你的功能:
return dataframe