Python Pandas命令无意中在行之间移动数据
我有一个名为TDLINX的整数列的熊猫数据帧。我试图将其转换为一个带前导零的字符串,这样所有值都是7个字符,带前导零。所以7会变成“0000007” 这是我使用的代码:Python Pandas命令无意中在行之间移动数据,python,python-2.7,pandas,Python,Python 2.7,Pandas,我有一个名为TDLINX的整数列的熊猫数据帧。我试图将其转换为一个带前导零的字符串,这样所有值都是7个字符,带前导零。所以7会变成“0000007” 这是我使用的代码: df_merged_total['TDLINX2'] = df.TDLINX.apply(lambda x: str(x).zfill(7)) 乍一看,这似乎是可行的,但当我进一步深入文件时,我意识到TDLINX2中的值开始移位。是什么导致了这种情况?我可以做些什么来防止它?您可以这样做: >>> df =
df_merged_total['TDLINX2'] = df.TDLINX.apply(lambda x: str(x).zfill(7))
乍一看,这似乎是可行的,但当我进一步深入文件时,我意识到TDLINX2中的值开始移位。是什么导致了这种情况?我可以做些什么来防止它?您可以这样做:
>>> df = pd.DataFrame({"col":[1, 33, 555, 7777]})
>>> df["new_col"] = ["%07d" % x for x in df.col]
>>> df
col new_col
0 1 0000001
1 33 0000033
2 555 0000555
3 7777 0007777
你可以这样做:
>>> df = pd.DataFrame({"col":[1, 33, 555, 7777]})
>>> df["new_col"] = ["%07d" % x for x in df.col]
>>> df
col new_col
0 1 0000001
1 33 0000033
2 555 0000555
3 7777 0007777
请给出一个完整的示例来说明您的问题。如果您的索引在
df\u merged\u total
和df
之间不对齐,那么您将观察到偏移量df\u merged\u total.index.difference(df.index)
显示了什么?您是对的。这绝对是问题所在。谢谢请给出一个完整的示例来说明您的问题。如果您的索引在df\u merged\u total
和df
之间不对齐,那么您将观察到偏移量df\u merged\u total.index.difference(df.index)
显示了什么?您是对的。这绝对是问题所在。谢谢